PDFiumPas 文档

SaveAsPdfUa 方法

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

语法

function SaveAsPdfUa(const FileName: string): Boolean; overload;
function SaveAsPdfUa(const FileName: string; const Options: TPdfUaSaveOptions): Boolean; overload;

说明

SaveAsPdfUa performs the regular SaveAs first, then layers an incremental update on top of the saved bytes that promotes the file to a PDF/UA-1 archive (ISO 14289-1:2014). The post-processing injects four classes of markers into the saved stream:

The output stays byte-identical to the base SaveAs result up to the end of the original PDF; only the incremental update is appended Existing readers that don't understand PDF/UA still render the file exactly as the regular SaveAs would. The two overloads differ only in how the configuration is passed in: the file-name-only form uses TPdfUaSaveOptions.Default with auto-population from FPDF_GetMetaText / FPDF_GetFileIdentifier / FPDFCatalog_GetLanguage, while the TPdfUaSaveOptions form lets the caller override Title, Author, Subject, Keywords, Creator, Producer, CreationDate, ModDate, Language, DocumentId, InstanceId, and the pdfuaid Part / Amd / Corr identifiers.

Returns True on success. Returns False if the base SaveAs failed or if the incremental update could not be attached (PDF too short, invalid trailer, encrypted source).

备注

示例

// Simple PDF/UA-1 output, options auto-populated from the document
if Pdf1.SaveAsPdfUa('C:\Report.pdfua.pdf') then
  ShowMessage('Saved PDF/UA-1');

// With explicit options (Title overridden, language explicit)
var
  Opts: TPdfUaSaveOptions;
begin
  Opts := TPdfUaSaveOptions.Default;
  Opts.DocumentTitle := 'Quarterly Report Q3 2026';
  Opts.Language := 'en-US';
  Pdf1.SaveAsPdfUa('C:\Report.q3.pdfua.pdf', Opts);
end;

另请参阅

SaveAsPdfUaToStream, ValidatePdfUa, PdfUaConformance, SaveAsPdfA, IsTagged