GetObjectByPath

文档属性、内容提取

描述

通过路径表达式读取对象树的任意节点,无需按编号遍历对象

语法

Delphi

Function TPDFlib.GetObjectByPath(Const Path: WideString; InfoID: Integer): WideString;

参数

Path路径表达式
InfoID1 为类型名称(boolean、number、string、name、array、dict、stream、null);2 为文本形式的标量值;3 为序列化形式,上限为 64 KB;4 为上一步按索引选择字典条目时的键名称

返回值

''路径无法解析,或该值没有所请求 InfoID 的表示形式
Text请求的信息

备注

路径步骤是以 / 分隔、从尾部字典开始的字典键(Root/Pages/Kids[0]/MediaBox),可选前缀为 trailer,还可使用选择从零开始的第 N 个页面字典的 pages[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