GetObjectByPath
文件屬性、內容擷取
描述
透過路徑運算式讀取物件樹的任意節點,不必按編號逐個走訪物件
語法
Delphi
Function TPDFlib.GetObjectByPath(Const Path: WideString; InfoID: Integer): WideString;參數
| Path | The path expression. |
|---|---|
| InfoID | 1 類型名稱(boolean、number、string、name、array、dict、stream、null);2 純量值的文字形式;3 序列化形式,上限 64 KB;4 最後一步以索引選取字典條目時的鍵名。 |
傳回值
| '' | 路徑無法解析,或該值對所要求的 InfoID 沒有表示形式。 |
|---|---|
| Text | 所要求的資訊。 |
備註
路徑步驟是從 trailer 開始、以 / 分隔的字典鍵(Root/Pages/Kids[0]/MediaBox),可加 trailer 字首,也可用 pages[N] 當根,選出零起算的第 N 個頁面字典。零起算的 [N] 選擇器可挑陣列項目或第 N 個字典條目,間接參照在每一步都會解析。
一次呼叫就涵蓋中繼資料探測、符合性抽查與支援診斷——過去這些得靠 GetObjectToString 加上手寫解析。
範例
W:= PDF.GetObjectByPath('Root/Pages/Kids[0]/MediaBox[2]', 2); // page width
T:= PDF.GetObjectByPath('pages[0]/Type', 2); // 'Page'另見
GetObjectByPathCount, GetObjectToString, GetCatalogInformation