CreatePreflightReportEx
合規性、文件檢查
Description
為外部 PDF 檔案建立預檢報告,並把報告轉成要求的輸出格式。這是 CreatePreflightReport 的格式感知版本;後者一律傳回純文字報告。
語法
Delphi
Function TPDFlib.CreatePreflightReportEx(Const InputFileName, Password: WideString; ComplianceTests, Options, ReportFormat: Integer): WideString;
參數
| InputFileName | 要驗證的 PDF 檔案完整路徑。檔案以唯讀開啟,不會被修改。 |
|---|---|
| Password | 開檔用的密碼。未加密文件請傳空字串。 |
| ComplianceTests | 選擇納入哪些檢查的位元遮罩:1 為 PDF/A,2 為 PDF/UA-1,3 或 0 為兩者。 |
| Options | 位元旗標,原樣傳給每個所選符合性檢查。傳 1 可讓每項檢查在第一個問題後停止。 |
| ReportFormat | 輸出格式選擇器。0 — 純文字。1 — JSON 物件,含檔頭欄位、每項檢查的區段、問題陣列與彙總欄位。2 — 獨立 HTML 文件,內含跳脫後的文字報告。3 — CSV 列,含中繼資料、所選檢查、問題代碼與訊息,以及最終彙總列。 |
Return value
以所選格式傳回產生的報告。未知的 ReportFormat 值會回退到純文字格式。
Remarks
JSON、HTML 與 CSV 格式都由 CreatePreflightReport 使用的同一份文字報告產生,因此通過/失敗狀態與問題數在所有報告格式之間保持一致。
JSON 物件公開檔頭欄位、sections 陣列、問題字串陣列與 summary 物件。HTML 形式是獨立文件,把文字報告跳脫後放進預格式化區塊。CSV 形式使用固定的 kind,section,status,code,message 欄位,把中繼資料、檢查狀態、問題列與彙總列分開,方便試算表或 CI 解析。
完整的報告格式合約與命令列示範,請參閱 Preflight Reports。
範例
JsonReport := PDF.CreatePreflightReportEx('output.pdf', '', 1 or 2, 0, 1);
HtmlReport := PDF.CreatePreflightReportEx('output.pdf', '', 1 or 2, 0, 2);
CsvReport := PDF.CreatePreflightReportEx('output.pdf', '', 1 or 2, 0, 3);另見
Preflight Reports, CreatePreflightReport, SavePreflightReportEx, ComparePreflightReports, CheckFileCompliance