CreatePreflightReport
合規性、文件檢查
Description
為外部 PDF 檔案建立純文字預檢報告:跑既有的 PDF/A 與 PDF/UA-1 檔案符合性檢查,並把結果整理成一份可重複使用的報告本體。應用程式想要人類可讀的報告時,用這個便捷 API 就好,不必手動依序呼叫 CheckFileCompliance、GetStringListCount、GetStringListItem 與 ReleaseStringList。
語法
Delphi
Function TPDFlib.CreatePreflightReport(Const InputFileName, Password: WideString; ComplianceTests, Options: Integer): WideString;
參數
| InputFileName | 要驗證的 PDF 檔案完整路徑。檔案以唯讀開啟,不會被修改。 |
|---|---|
| Password | 開檔用的密碼。未加密文件請傳空字串。 |
| ComplianceTests | Bit mask selecting which checks to include. 1 — PDF/A. 2 — PDF/UA-1. 3 — both PDF/A and PDF/UA-1. Passing 0 also runs both checks. |
| Options | Bit flags passed through to each underlying compliance check. 0 — Report every issue found in each selected check. 1 — Stop each selected check after the first issue. |
Return value
傳回 UTF-16 文字報告,含報告檔頭、每個所選符合性檢查一節,以及帶 Total issues 與 Result 行的最終彙總。
Remarks
選擇多個標準時,檔案只解析一次,兩項稽核共用同一個讀取器、安全性狀態、文件物件圖與惰性物件快取
報告 API 不能取代專職的外部 PDF/A 驗證器。它把程式庫內建的第一線 PDF/A 與 PDF/UA-1 診斷打包成穩定、面向應用程式的報告。應用程式需要文字、JSON、HTML 或 CSV 輸出時用 CreatePreflightReportEx;需要個別問題清單控制代碼而不是格式化文字時,直接用 CheckFileCompliance。
純文字報告是所有格式化報告的正源。它包含易變的 Generated: 中繼資料、Input: 路徑、所選檢查、問題收集模式、每個所選符合性測試一節,以及帶 Total issues 與 Result 的最終彙總。
命令列與批次報告流程請參閱 Preflight Reports。
範例
var
Report: WideString;
begin
Report := PDF.CreatePreflightReport('output.pdf', '', 1 or 2, 0);
WriteLn(Report);
end;另見
Preflight Reports, CreatePreflightReportEx, SavePreflightReport, ComparePreflightReports, CheckFileCompliance, GetPDFUADiagnostics, SetPDFAMode, SetPDFUAMode