PDFium Delphi Component Docs

SaveAsPdfUa Metodo

Componente: TPdf  ·  Unità: PDFium
Salva in PDF/UA-1 per impostazione predefinita oppure in PDF/UA-2 quando configurato tramite TPdfUaSaveOptions.PdfUa2

Syntax

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

Description

SaveAsPdfUa esegue prima il normale SaveAs, quindi sovrappone ai byte salvati un aggiornamento incrementale che promuove il file a documento PDF/UA-1 o PDF/UA-2. La post-elaborazione inietta quattro classi di marcatori nello stream salvato:

L'output rimane byte-identico al risultato del SaveAs base fino alla fine del PDF originale; viene aggiunto solo l'aggiornamento incrementale I lettori esistenti che non comprendono PDF/UA rendono comunque il file esattamente come farebbe il normale SaveAs. I due overload differiscono solo nel modo in cui viene passata la configurazione: la forma con il solo nome file usa TPdfUaSaveOptions.Default con popolamento automatico da FPDF_GetMetaText / FPDF_GetFileIdentifier / FPDFCatalog_GetLanguage, mentre la forma con TPdfUaSaveOptions consente al chiamante di sostituire Title, Author, Subject, Keywords, Creator, Producer, CreationDate, ModDate, Language, DocumentId, InstanceId e gli identificatori pdfuaid Part, Revision, Amd e Corr

TPdfUaSaveOptions.PdfUa2 seleziona la Parte 2, fornisce il valore predefinito pdfuaid:rev 2024 e scrive il catalogo /Version /2.0 così che una sorgente PDF 1.x aggiornata in modo incrementale abbia PDF 2.0 come versione effettiva

Restituisce True in caso di successo. Restituisce False se il SaveAs base è fallito o se l'aggiornamento incrementale non ha potuto essere allegato (PDF troppo corto, trailer non valido, sorgente cifrata)

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