PDFium Delphi Component Docs

SaveAsPdfUa Méthode

Composant: TPdf  ·  Unit: PDFium
Sauvegarde en PDF/UA-1 par défaut ou en PDF/UA-2 lorsqu’il est configuré via TPdfUaSaveOptions.PdfUa2

Syntax

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

Description

SaveAsPdfUa effectue d’abord le SaveAs ordinaire, puis superpose une mise à jour incrémentale au-dessus des octets sauvegardés qui promeut le fichier en document PDF/UA-1 ou PDF/UA-2. Le post-traitement injecte quatre classes de marqueurs dans le flux sauvegardé

La sortie reste identique octet par octet au résultat SaveAs de base jusqu’à la fin du PDF d’origine ; seule la mise à jour incrémentale est ajoutée. Les lecteurs existants qui ne comprennent pas PDF/UA rendent quand même le fichier exactement comme le ferait le SaveAs ordinaire. Les deux surcharges ne diffèrent que par la façon dont la configuration est passée : la forme à nom de fichier seul utilise TPdfUaSaveOptions.Default avec auto-remplissage depuis FPDF_GetMetaText / FPDF_GetFileIdentifier / FPDFCatalog_GetLanguage, tandis que la forme TPdfUaSaveOptions laisse l’appelant remplacer Title, Author, Subject, Keywords, Creator, Producer, CreationDate, ModDate, Language, DocumentId, InstanceId, et les identifiants pdfuaid Part, Revision, Amd et Corr

TPdfUaSaveOptions.PdfUa2 sélectionne la Partie 2, fournit la valeur pdfuaid:rev par défaut 2024 et écrit /Version /2.0 dans le catalogue afin qu’une source PDF 1.x mise à jour de façon incrémentale ait PDF 2.0 comme version effective

Renvoie True en cas de succès. Renvoie False si le SaveAs de base a échoué ou si la mise à jour incrémentale n’a pas pu être attachée (PDF trop court, trailer invalide, source chiffrée)

Remarks

Example

// 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);

// PDF/UA-2 output based on ISO 32000-2
  Opts := TPdfUaSaveOptions.PdfUa2;
  Opts.DocumentTitle := 'Accessible PDF 2.0 report';
  Opts.Language := 'en-US';
  Pdf1.SaveAsPdfUa('C:\Report.pdfua2.pdf', Opts);
end;

See Also

SaveAsPdfUaToStream, ValidatePdfUa, PdfUaConformance, SaveAsPdfA, IsTagged