THPDFContentOperatorEventData Record
把一次內容串流運算子走訪遞送給監聽器,附帶位置、狀態、運算元視圖與要套用的動作
宣告
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只在回呼期間有效;返回前先把需要的運算元位元組拷貝出來