GetTextBlockCharUnicodeFlags
文字、擷取、診斷、Unicode
描述
傳回所選文件文字區塊中單一字元的 Unicode 映射與後備旗標
語法
Delphi
Function TPDFlib.GetTextBlockCharUnicodeFlags(TextBlockListID, Index, CharIndex: Integer): Integer;參數
| TextBlockListID | 由 ExtractPageTextBlocks 傳回的控制代碼 |
|---|---|
| Index | 從 1 起算的文字區塊索引 |
| CharIndex | 區塊文字內從 1 起算的 UTF-16 字碼單位位置 |
傳回值
| -1 | 控制代碼、區塊索引或字元索引無效 |
|---|---|
| 0 或旗標 | 沒有適用的來源字符映射,或結果包含一或多個 Unicode 診斷旗標 |
旗標
PDF_TEXT_CHAR_UNICODE_EXPLICIT | 該字元由明確且有效的 ToUnicode 映射產生 |
|---|---|
PDF_TEXT_CHAR_UNICODE_FALLBACK | 該字元由字型編碼、字符、CID 或原始碼後備機制產生 |
PDF_TEXT_CHAR_UNICODE_MISSING_TOUNICODE | 字型沒有 ToUnicode 項目 |
PDF_TEXT_CHAR_UNICODE_UNMAPPED | 有效的 ToUnicode CMap 沒有該來源碼的映射 |
PDF_TEXT_CHAR_UNICODE_INVALID | ToUnicode CMap 無法使用,或所選映射是無效的 UTF-16 |
PDF_TEXT_CHAR_UNICODE_REPLACEMENT | 因為沒有可用的後備機制,傳回的文字包含 U+FFFD |
備註
請用位元測試,因為回退結果同時帶有 missing、unmapped 或 invalid 原因
旗標在萃取時保留,查詢為常數時間,不必重新剖析頁面內容
一個輔助 Unicode 純量佔兩個 UTF-16 位置,且兩個位置帶有相同旗標