PDF/X-6 撰寫與驗證

HotPDF 在 PDF 2.0 之上支援完整版、外部設定檔與 N 色料版的 PDF/X-6 交換流程

設定檔

PDFXComplianceTHPDFPDFX6Profile輸出設定檔
'X-6'px6Complete透過 DestOutputProfile 內嵌 ICC 設定檔
'X-6p'px6External透過 DestOutputProfileRef 使用外部灰階、RGB 或 CMYK ICC 設定檔
'X-6n'px6NChannel外部 N 色料設定檔加上相符的 ColorantTable
從文件偵測px6Automatic使用產生端設定或已載入的 XMP 識別

完整設定檔範例

PDF.Version := pdf20;
PDF.PDFXCompliance := 'X-6';
PDF.Title := 'Press-ready artwork';
PDF.Trapped := 'False';
PDF.BeginDoc;
PDF.CurrentPage.SetTrimBox(0, 0,
  PDF.CurrentPage.Width, PDF.CurrentPage.Height);
PDF.AddPDFXOutputIntent('CGATS TR 001',
  'Document printing condition', ICCStream, 4, 'DeviceCMYK');
PDF.EndDoc;

EndDoc 在序列化之前對全部三種 PDF/X-6 設定檔執行失敗即關閉的驗證

輸出意向範圍

頁面框

驗證器解析繼承的 MediaBox 與 CropBox、檢查直接的 BleedBox、TrimBox 與 ArtBox 值,並要求每頁恰好一個成品頁面框

交換約束

一次有界的圖形遍歷檢查設定檔識別與交換結構,同時依物件身分對共享資源去重

版本化規則

THPDFPDFX6ValidationOptions.RuleSet 可選擇已發布的 ISO 15930-9:2020 規則,或同一版含 2025-11-11 前已決議勘誤的版本,預設採用已決議勘誤集

HPDFPDFX6RuleSetRevision 回傳穩定的修訂標籤,每個 THPDFPDFX6ValidationIssue 都帶有 RuleSet 與 RuleRevision,預設值演進時已儲存的診斷仍可追溯

著色、疊印與透明

驗證器在實際著色運算子處解讀圖形狀態與資源,而不是把色彩選擇當成已著色的輸出

有界執行與快取

物件、問題、解碼位元組、內容工作、遞迴與圖形狀態堆疊的上限會在無界配置之前以穩定診斷失敗關閉,嵌在 TJ 陣列內的成員也在規範之列

解碼內容、ICC 設定檔、JPX 標頭色彩與 Type 3 結構使用帶索引的文件本地快取(儲存以幾何級數成長),而脈絡敏感的色彩與透明狀態每次呼叫都重新評估

結構化診斷

ValidatePDFX6 回傳 THPDFPDFX6ValidationIssues,即 THPDFPDFX6ValidationIssue 記錄陣列,其 THPDFPDFX6IssueSeverity 區分警告與錯誤

每個問題都包含穩定代碼、標準條款、規則集、規則修訂、物件路徑、物件編號、零基頁索引與訊息

THPDFPDFX6ValidationOptions 分別限制物件、問題、解碼位元組與內容 token,並可單獨隔離輸出意向、頁面框、交換、字型、註解、著色、疊印或透明檢查

相關 API