THPDFContentOperatorEventData レコード
コンテンツストリームの 1 オペレータ訪問を、位置、状態、オペランドビュー、適用するアクションとともにリスナーへ届けます
宣言
THPDFContentOperatorEventData= record
Phase: THPDFContentOperatorVisitPhase;
OperationIndex: Integer;
NodeIndex: Integer;
OperatorName: AnsiString;
OperandCount: Integer;
StartOfs: Integer;
EndOfs: Integer;
State: THPDFContentOperatorState;
View: THPDFContentOperatorView;
Action: THPDFContentOperatorAction;
Replacement: SysUtils.TBytes;
end;
ユニット
HPDFContentStream
フィールド
| フィールド | 目的 |
|---|---|
Phase | 訪問ステージ。covpBeginStream、covpOperator、covpEndStream のいずれかです |
OperationIndex | ストリーム内のオペレータのゼロベース序数 |
NodeIndex | 構文木における操作ノードのインデックス |
OperatorName | オペレータのテキスト。たとえば Tj や cm です |
OperandCount | 操作ノードが持つオペランドの数 |
StartOfs | ソースストリーム内で操作が始まるバイトオフセット |
EndOfs | 操作の直後を指すバイトオフセット |
State | 訪問時点でのグラフィックス状態、テキストオブジェクト、マーク付きコンテンツ、互換セクションの各ネスト深度 |
View | 操作とオペランドのバイトへの読み取りアクセスを提供する THPDFContentOperatorView です |
Action | リスナーの判定。coaKeep、coaDelete、coaReplace、coaStop、coaReject のいずれかです |
Replacement | Action が coaReplace のときに操作へ差し替えられる新しいバイト列 |
使用上の注意
IHPDFContentOperatorVisitor.VisitContentOperatorとTHPDFContentOperatorEventハンドラが受け取ります- ストリームを書き直すには
ActionをcoaDeleteかcoaReplace(Replacementバイトを添えて)にし、パスを早めに終えるにはcoaStop、エラーステータスで中断するにはcoaRejectを設定します Viewはコールバックの間だけ有効です。返る前に必要なオペランドバイトをコピーしてください