EnumPageContentStates
页面操作
描述
跟踪选定页面所有内容层中的每条指令,并按内容顺序报告有效图形状态同一跟踪器会跨越页面
/Contents 数组继续工作,因此一个流中的 q 与后续流中匹配的 Q 能保持正确的栈状态
语法
Delphi
Function EnumPageContentStates(AfterInstruction: Boolean; Var States: Array Of TPDFlibContentGraphicsState): Integer;参数
AfterInstruction 为真时选取每个操作符之后立即的快照,为假时选取每个操作符之前立即的快照
States 接收调用方提供数组所能容纳数量的记录
返回值
返回指令总数(包括未能放入 States 的记录);未选定文档或某层无法解析时返回 0
备注
先用空数组调用一次取得数量,分配目标后再调用一次填充
页面的 ExtGState、字体和 XObject 资源在追踪前解析一次;有效黑点补偿以 Default 开始,跟随 gs 变更和 q/Q 恢复,并随每个快照报告
XObject 的 Do 快照识别图像、表单或 PostScript 资源,并报告变换后的调用边界
文本显示算子按简单或复合字体度量推进 TextMatrix,包括横排或竖排、间距、缩放和 TJ 调整
初始裁剪边界使用所选页面的 CropBox(带标准 MediaBox 回退),后续路径算子更新保守或精确的裁剪边界
未解析的外部资源保留其标识符,不虚构有效值
该 API 刻意保持仅页面级;需要包含 Form XObject 指令时请使用 EnumPageContentStatesEx