PDFiumPas 文件

SaveAsPdfX 方法

此 API 條目保留識別符號、簽名、程式碼塊和 PDF 術語的原始形式。
元件: TPdf  ·  單元: PDFium
將目前文件儲存為符合 PDF/X-1a:2001、PDF/X-3:2002 或 PDF/X-4 的檔案,做法是對基礎 PDF 套用增量更新,注入 PDF/X 檔案格式標記(ISO 15930 family)

語法

function SaveAsPdfX(const FileName: string): Boolean; overload;
function SaveAsPdfX(const FileName: string; const Options: TPdfXSaveOptions): Boolean; overload;

說明

SaveAsPdfX 會先執行一般的 SaveAs,接著在儲存的位元組上分層進行增量更新,這會將檔案提升至 PDF/X 相容性 — 這是圖形藝術行業中所使用 ISO 15930 印刷交換標準系列。後處理會將五種類別的位元組注入儲存的串流中:

trailer 會被重寫以新增 /ID 陣列。輸出在原始 PDF 結尾之前都會和 base SaveAs 的結果完全一致;只有增量更新會被附加上去。兩個多載的差別只在於設定要怎麼傳入:只傳檔名的形式會使用 TPdfXSaveOptions.Default(PDF/X-4 + sRGB + /Trapped /False),並從 FPDF_GetMetaTextFPDF_GetFileIdentifier 自動填入 Info / DocumentId 欄位

成功時傳回 True。若 base SaveAs 失敗,或增量更新無法附加,則傳回 False

備註

範例

// 內建 sRGB OutputIntent 的簡單 PDF/X-4
if Pdf1.SaveAsPdfX('C:\AdProof.pdfx.pdf') then
  ShowMessage('Saved PDF/X-4');

// PDF/X-1a with a custom CMYK ICC profile (e.g. FOGRA39)
var
  Opts: TPdfXSaveOptions;
begin
  Opts := TPdfXSaveOptions.Default;
  Opts.Conformance := pxc1a;
  Opts.IccProfileData := TFile.ReadAllBytes('C:\ICC\FOGRA39.icc');
  Opts.OutputCondition := 'Coated FOGRA39 (ISO 12647-2:2004)';
  Opts.OutputConditionIdentifier:= 'FOGRA39';
  Opts.RegistryName := 'http://www.color.org';
  Opts.Trapped := ptFalse;
  Pdf1.SaveAsPdfX('C:\AdProof.cmyk.pdfx.pdf', Opts);
end;

另請參閱

SaveAsPdfXToStream, ValidatePdfX, PdfXConformance, SaveAsPdfA, SaveAsPdfE