PDFiumPas 文档

SaveAsPdfX 方法

此 API 条目保留标识符、签名、代码块和 PDF 术语的原始形式。
组件: TPdf  ·  单元: PDFium
通过对基础 PDF 进行增量更新并注入 PDF/X 文件格式标记,将当前文档保存为符合 PDF/X-1a:2001、PDF/X-3:2002 或 PDF/X-4 的文件 (ISO 15930 系列)

语法

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 结束之前会与基础 SaveAs 结果逐字节一致;只有增量更新会被追加。两个重载的区别只在于配置的传入方式:仅文件名的形式使用 TPdfXSaveOptions.Default(PDF/X-4 + sRGB + /Trapped /False),并从 FPDF_GetMetaTextFPDF_GetFileIdentifier 自动填充 Info / DocumentId 字段

成功时返回 True。如果基础 SaveAs 失败,或者增量更新无法附加,则返回 False

备注

示例

// 捆绑 sRGB OutputIntent 的简单 PDF/X-4
if Pdf1.SaveAsPdfX('C:\AdProof.pdfx.pdf') then
  ShowMessage('Saved PDF/X-4');

// 带有自定义 CMYK ICC 配置文件的 PDF/X-1a(例如 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