DAGetTextBlockCharContentLocation
直接存取、文字、擷取、內容串流、診斷
描述
傳回與一個直接存取擷取字元相關聯的穩定內容串流位置與編碼來源位元組範圍
語法
Delphi
Function TPDFlib.DAGetTextBlockCharContentLocation(TextBlockListID, Index,
CharIndex: Integer; Out ContentLayer, StreamObjectNumber,
StreamGeneration, InstructionIndex, OperandIndex, ArrayElementIndex,
SourceByteOffset, SourceByteLength, Flags: Integer): Integer;參數
| TextBlockListID | 由 DAExtractPageTextBlocks 傳回的控制代碼 |
|---|---|
| Index | 從 1 起算的文字區塊索引 |
| CharIndex | 區塊文字內從 1 起算的 UTF-16 字碼單位位置 |
| ContentLayer | 從 1 起算的頁面 /Contents 圖層;巢狀內容為 0 |
| StreamObjectNumber | 包含串流的物件編號;直接串流為 0 |
| StreamGeneration | 包含串流的世代編號 |
| InstructionIndex | 解碼後內容程式中從 0 起算的指令索引 |
| OperandIndex | 從 0 起算的文字字串運算元索引 |
| ArrayElementIndex | 從 0 起算的 TJ 陣列元素;直接字串運算元為 -1 |
| SourceByteOffset | 解碼字串值中從 0 起算的偏移;沒有可安全定址的範圍時為 -1 |
| SourceByteLength | 來源字符的編碼來源位元組數;沒有可安全定址的範圍時為 0 |
| Flags | 與 GetTextBlockCharContentLocation 共用的位元遮罩內容位置旗標 |
傳回值
| 1 | 已傳回位置記錄,包括合成或唯讀記錄 |
|---|---|
| 0 | 控制代碼、區塊索引或字元索引無效 |
備註
Direct Access 位置僅供診斷且唯讀,因為 ReplaceTextBlockCharSourceBytes 操作的是所選的可編輯文件
位移指向解碼後的字型編碼字串位元組,而不是 Unicode 文字
Direct Access 檔案控制碼關閉後,位置資料仍保留在文字區塊清單中
輔助字元與連字展開可能對多個 UTF-16 位置回傳同一來源範圍