THPDFContentSyntaxNode 记录
表示保留令牌的内容流语法树中的一个紧凑节点,带有链接的子节点和词素区段
声明
THPDFContentSyntaxNode= record
Kind: THPDFContentSyntaxNodeKind;
ParentIndex: Integer;
FirstChildIndex: Integer;
LastChildIndex: Integer;
NextSiblingIndex: Integer;
ChildCount: Integer;
FirstLexemeIndex: Integer;
LastLexemeIndex: Integer;
OperatorLexemeIndex: Integer;
StartOfs: Integer;
EndOfs: Integer;
end;
单元
HPDFContentStream
字段
| 字段 | 用途 |
|---|---|
Kind | 节点类别:csnkRoot、csnkOperation、csnkOperand、csnkArray、csnkDictionary、csnkProcedure、csnkInlineImage 或 csnkMalformed |
ParentIndex | 父节点的索引;未设置父节点时为 -1 |
FirstChildIndex | 第一个子节点的索引;节点没有子节点时为 -1 |
LastChildIndex | 最后一个子节点的索引 |
NextSiblingIndex | 下一个兄弟节点的索引;位于子节点列表末尾时为 -1 |
ChildCount | 直接子节点的数量 |
FirstLexemeIndex | 节点在词素数组中覆盖的第一个词素 |
LastLexemeIndex | 节点覆盖的最后一个词素 |
OperatorLexemeIndex | 持有操作节点操作符的词素;其他节点类别为 -1 |
StartOfs | 节点源区段起始处的字节偏移 |
EndOfs | 刚好越过节点源区段之后的字节偏移 |
使用说明
- 操作节点拥有自己的操作数,并通过
OperatorLexemeIndex单独标识操作符词素 - 容器节点保留嵌套的数组、字典和过程,不规范化其原始拼写,因此编辑保持保留令牌
- 请通过
THPDFContentStreamAST.GetNode读取节点,不要直接触碰内部节点数组