SetTextExtractionOptions
文字、擷取
描述
設定影響文字擷取功能的各種選項
從 8.13 起,此函式只為所選文件設定文字擷取選項,也只影響 GetPageText
function.
要調整 ExtractFilePageText 與 DAExtractPageText 函式的文字擷取,請用新的 DASetTextExtractionOptions
function.
語法
Delphi
Function TPDFlib.SetTextExtractionOptions(OptionID, NewValue: Integer): Integer;
ActiveX
Function PDFlib::SetTextExtractionOptions(OptionID As Long, NewValue As Long) As Long
DLL
int DLSetTextExtractionOptions(int InstanceID, int OptionID, int NewValue);
參數
| OptionID | 1 = 忽略字型變更,讓不同區塊可以合併分組 2 = 忽略顏色變更,讓不同區塊可以合併分組 3 = 忽略文字區塊變更,讓不同區塊可以合併分組 4 = 輸出 CMYK 顏色值 5 = 依左上角位置排序文字區塊 6 = 使用字型度量的下伸部 7 = 忽略重疊 8 = 忽略重複 9 = 以連續兩個空格分割 10 = 裁掉區域外字元 11 = 替代區塊匹配 12 = 忽略旋轉的文字區塊 13 = 去除文字區塊前後空白 14 = 輸出低於空白字元(0x32)的非 ASCII 字元 15 = 移除特定字元字串(例如底線行,見下述) |
|---|---|
| NewValue | OptionID = 1、2、3 與 6:0 = 使用,1 = 忽略 OptionID = 4:0 = 以 RGB 顯示(預設),1 = 以 CMYK 顯示 OptionID = 5:0 = 不排序區塊(預設),1 = 排序區塊 OptionID = 7、8 與 12:0 = 不忽略,1 = 忽略 OptionID = 9:0 = 不以雙空格分割(預設),1 = 以雙空格分割 OptionID = 10:0 = 不裁掉區域外字元(預設),1 = 裁掉區域外字元 OptionID = 11:0 = 一般區塊匹配,1 = 替代區塊匹配 OptionID = 13:0 = 不去除前後空白,1 = 去除前後空白 OptionID = 14 0 = 從輸出移除低於空白字元的非 ASCII 字元(預設),1 = 輸出未過濾的原始 ASCII 字元 OptionID = 15 0 = 輸出底線字元構成的文字行(預設),1 = 移除底線字元構成的文字行 OptionID = 16 0 = 保留行尾連字號(預設),1 = 在逐行輸出(GetPageText 模式 7 與 9)中重新接合跨行連字號斷開的單字;接續以小寫開頭時去掉連字號與斷行,大寫或數字接續則保留 OptionID = 17 0 = show-text 序列維持繪製原樣(預設),1 = 在遠大於序列字形中位數前進量的位置,把無空格 show-text 序列重新切分成單字(GetPageText 模式 7 與 9-11),整行用一個運算子搭配 kerning 間距而非空格繪出的文件因此也能切出單字 OptionID = 18 0 = 以頁面座標擷取旋轉序列(預設),1 = 把以 90、180 或 270 度繪出的序列轉正到水平閱讀框並分組每個四分之一轉,旋轉的邊欄註記、表頭與座標軸標籤因此能擷取成可讀的行,不與正立文字交錯;兩者同時設定時仍以 OptionID 12 為優先 |
傳回值
| 0 | OptionID 或 NewValue 參數無效 |
|---|---|
| 1 | 文字擷取選項設定成功 |