THotPDF.AnalyzeLoadedSignatureRevisions 方法
分類所選簽章之後的所有增量修訂,並依據 DocMDP 與 FieldMDP 評估彙總變更
宣告
function AnalyzeLoadedSignatureRevisions(
SigIndex: Integer;
Source: TStream;
out Analysis: THPDFSignatureRevisionAnalysis
): boolean; overload;
function AnalyzeLoadedSignatureRevisions(
SigIndex: Integer;
out Analysis: THPDFSignatureRevisionAnalysis
): boolean; overload;
單元
HPDFDoc
參數
| 名稱 | 用途 |
|---|---|
SigIndex | 已載入簽章欄位從零開始的索引 |
Source | 呼叫端擁有的串流,包含已載入 PDF 的確切位元組 |
Analysis | 接收修訂、物件、欄位、權限、合規性與診斷詳細資料 |
Change kinds
THPDFRevisionChangeKinds independently records long-term-validation maintenance, form filling, signing, annotation create/delete/modify, embedded-file create/delete/modify, page-template instantiation, and unrecognised changes
The kind set preserves operation detail that a single ordered modification level cannot express and drives UR/UR3 permission matching
傳回值
當已分析簽章位元組範圍與修訂鏈時傳回 True,否則傳回 False 並在 Analysis.Issue 中回報原因
修改層級
THPDFRevisionModificationLevel 將語意變更從最不嚴格到最嚴格排序
| 值 | 意義 |
|---|---|
rmlNone | 簽章後無物件變更 |
rmlLongTermValidation | DSS、VRI、憑證、撤銷、延伸或文件時間戳記維護 |
rmlFormFillAndSign | 表單值、widget 外觀或簽章結構 |
rmlAnnotations | 註解物件或頁面註解連結 |
rmlOther | 無法辨識、無法讀取、已釋放或因其他原因而不允許的物件 |
結果詳細資料
THPDFSignatureRevisionAnalysis 包含 THPDFSignatureRevisionChange 記錄的 THPDFSignatureRevisionChangeArray
SignedRevisionLength、TotalRevisionCount與SignedRevisionIndex識別依時序排列之修訂鏈中的已簽署快照Revisions回報每個較晚的 xref 偏移、語意層級、已變更與已釋放的物件編號、已變更的欄位名稱,以及任何保守分類的問題Permissions包含與DocMDPCompliant與FieldMDPCompliant回報獨立的原則決策,而URCompliant, andIdentityCompliantreport independent decisions, whileTransformCompliantcombines all transform methods with structural validityPolicyCompliant則結合它們與結構有效性
使用說明
- 檔案支援多載會開啟
LoadFromFile所使用的來源檔案;請在LoadFromStream之後使用串流多載 - 串流位置會在方法傳回之前還原
- 支援傳統 xref 表格、xref 串流、混合參照、增量
/Prev鏈與壓縮的物件串流成員 - 不明、無法讀取或已釋放的物件會分類為
rmlOther,使原則檢查能安全失敗 - 此方法評估修訂語意與權限,但不取代密碼編譯簽章驗證
rmlOtherso policy checks fail safely - This method evaluates revision semantics and permissions but does not replace cryptographic signature verification
- SaveIncrementalUpdateAuthenticated combines this analysis with signature authentication and atomic publication