跳轉到主要內容
此方法會處理輸入的「僅影像」或「影像覆蓋文字」PDF 檔案,並建立可搜尋的 PDF 檔案,其中包含相同的頁面影像,以及根據文件中辨識出的文字所建立的不可見文字層。 請注意,如果輸入檔案已包含文字層,該文字層將會被取代。您可以使用 Engine 物件的 IsPdfWithTextualContent 方法,檢查輸入檔案是否包含文字層。 只有 PDF 檔案可使用此方法處理。若要從其他影像類型建立可搜尋的 PDF,您可以使用 FRDocument 物件的方法 (例如 AddImageFileProcessExport) 。
在 Windows 中,呼叫此方法之前,必須先在目前執行緒上初始化 COM 程式庫。

語法

C++

HRESULT InjectTextLayer(
  BSTR                       SourcePdfFile,
  BSTR                       TargetPdfFile,
  IImagePasswordCallback*    PasswordCallback,
  IPrepareImageMode*         PrepareMode,
  IDocumentProcessingParams* DocumentProcessingParams,
  IIntsCollection*           PageIndices,
  IProcessingEvents*         ProcessingEvents,
  ITextLayerInjectionParams* TextLayerInjectionParams
);

C#

void InjectTextLayer(
  string                    SourcePdfFile,
  string                    TargetPdfFile,
  IImagePasswordCallback    PasswordCallback,
  IPrepareImageMode         PrepareMode,
  IDocumentProcessingParams DocumentProcessingParams,
  IIntsCollection           PageIndices,
  IProcessingEvents         ProcessingEvents,
  ITextLayerInjectionParams TextLayerInjectionParams
);

Visual Basic .NET

 Sub InjectTextLayer( _
  SourcePdfFile As String, _
  TargetPdfFile As String, _                
  [PasswordCallback As IImagePasswordCallback = Nothing], _
  [PrepareMode As IPrepareImageMode = Nothing], _         
  [DocumentProcessingParams As IDocumentProcessingParams = Nothing], _
  [PageIndices As IIntsCollection = Nothing], _
  [ProcessingEvents As IProcessingEvents = Nothing], _
  [TextLayerInjectionParams As ITextLayerInjectionParams = Nothing] _
)

參數

SourcePdfFile [in] 此變數包含來源 PDF 檔案的完整路徑。無法處理其他格式的檔案。 TargetPdfFile [in] 此變數包含要建立為處理結果的可搜尋 PDF 檔案完整路徑。來源檔案與目標檔案的名稱不可相同。 PasswordCallback [in] 指向由使用者實作、類型為 IImagePasswordCallback 的物件介面,用於處理存取 PDF 檔案時可能出現的密碼要求。此參數為選用項,可為 0;在此情況下,將無法處理受密碼保護的檔案。 PrepareMode [in] 指向 PrepareImageMode 物件,該物件定義將影像檔案轉換為 ABBYY FineReader Engine 內部格式的模式。此參數可為 0;在此情況下,將使用影像準備模式的預設參數;或者,如果已載入 設定檔,則使用該設定檔中設定的參數。 請注意,在幾何校正相關參數中,只有去傾斜、鏡像與旋轉相關的參數會納入考量。不會執行頁面分割和非線性幾何校正。 DocumentProcessingParams [in] 指向 DocumentProcessingParams 物件,該物件儲存所有處理參數。此參數可為 0。在此情況下,文件將使用預設參數進行處理 (所有處理參數都設為預設值) ;或者,如果已載入 設定檔,則使用該設定檔中設定的參數。 請注意,在幾何校正相關參數中,只有影像去傾斜、鏡像與旋轉相關的參數會納入考量。不會執行頁面分割和非線性幾何校正。 PageIndices [in] 此參數指向 IntsCollection 物件,該物件指定要注入文字的文件頁面索引。此參數為選用項,可為 0;在此情況下,文字將注入文件的所有頁面。 ProcessingEvents [in] 指向由使用者實作之物件的 IProcessingEvents 介面,用於管理處理程序。此參數可為 0;在此情況下,不會附加任何回呼。 TextLayerInjectionParams [in] 此變數指向 TextLayerInjectionParams 物件,該物件儲存在文字注入期間進行文件處理時所使用的參數。此參數可為 0。在此情況下,將使用該物件屬性的預設值。

傳回值

此方法沒有特定的傳回值。它會傳回 ABBYY FineReader Engine 函式的標準傳回值

備註

會考慮影像去傾斜、鏡像和旋轉的相關處理參數。不會執行頁面分割和非線性幾何校正。 在 Linux 和 Windows 上:依 IEngine::MultiProcessingParams 屬性的值而定,ABBYY FineReader Engine 可將多頁文件的處理工作分散到各個 CPU 核心。

另請參閱

Engine IImagePasswordCallback