此方法會處理輸入的「僅影像」或「影像覆蓋文字」PDF 檔案,並建立可搜尋的 PDF 檔案,其中包含相同的頁面影像,以及根據文件中辨識出的文字所建立的不可見文字層。
請注意,如果輸入檔案已包含文字層,該文字層將會被取代。您可以使用 Engine 物件的 IsPdfWithTextualContent 方法,檢查輸入檔案是否包含文字層。
只有 PDF 檔案可使用此方法處理。若要從其他影像類型建立可搜尋的 PDF,您可以使用 FRDocument 物件的方法 (例如 AddImageFile、Process 和 Export) 。
在 Windows 中,呼叫此方法之前,必須先在目前執行緒上初始化 COM 程式庫。
HRESULT InjectTextLayer(
BSTR SourcePdfFile,
BSTR TargetPdfFile,
IImagePasswordCallback* PasswordCallback,
IPrepareImageMode* PrepareMode,
IDocumentProcessingParams* DocumentProcessingParams,
IIntsCollection* PageIndices,
IProcessingEvents* ProcessingEvents,
ITextLayerInjectionParams* TextLayerInjectionParams
);
void InjectTextLayer(
string SourcePdfFile,
string TargetPdfFile,
IImagePasswordCallback PasswordCallback,
IPrepareImageMode PrepareMode,
IDocumentProcessingParams DocumentProcessingParams,
IIntsCollection PageIndices,
IProcessingEvents ProcessingEvents,
ITextLayerInjectionParams TextLayerInjectionParams
);
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