function SaveAsPdfE(const FileName: string): Boolean; overload;
function SaveAsPdfE(const FileName: string; const Options: TPdfESaveOptions): Boolean; overload;
SaveAsPdfE exécute d'abord SaveAs, puis superpose une mise à jour incrémentielle sur les octets enregistrés afin de promouvoir le fichier en archive PDF/E-1 (ISO 24517-1:2008, le format de document d'ingénierie dérivé de PDF 1.6). Le post-traitement injecte quatre classes de marqueurs dans le flux enregistré :
pdfe:ISO_PDFEVersion = "PDF/E-1") ainsi que la description pdfaExtension:schemas correspondante pour l'espace de noms pdfe, et les propriétés Dublin Core / xmp / pdf relayées héritées de ISO 19005-1 §6.7 via §13.1 (dc:title / dc:creator / dc:description / xmp:CreateDate / xmp:ModifyDate / xmp:MetadataDate / xmp:CreatorTool / pdf:Producer / pdf:Keywords)/ISO_PDFEVersion (PDF/E-1) exigée par la clause SHALL de §5. L'objet Info conserve son numéro d'objet d'origine ; les entrées Info émises par PDFium sont préservées telles quelles. Lorsque le trailer source ne contient pas de /Info, un nouveau dictionnaire Info est synthétisé et une nouvelle référence /Info est écrite dans le trailer/Metadata pointant vers le nouveau flux XMP/ID de trailer (§6.2) : réutilisé à partir de FPDF_GetFileIdentifier lorsque le PDF source en porte déjà un, sinon dérivé de manière déterministe à partir des octets sourceLa sortie reste octet pour octet identique au résultat de base de SaveAs jusqu'à la fin du PDF original ; seule la mise à jour incrémentielle est ajoutée. Les lecteurs existants qui ne comprennent pas PDF/E affichent tout de même le fichier exactement comme SaveAs le ferait. Les deux surcharges ne diffèrent que par la façon dont la configuration est transmise : la forme réservée au nom de fichier utilise TPdfESaveOptions.Default avec remplissage automatique à partir de FPDF_GetMetaText et FPDF_GetFileIdentifier, tandis que la forme TPdfESaveOptions permet à l'appelant de remplacer Title, Author, Subject, Keywords, Creator, Producer, CreationDate, ModDate, DocumentId, InstanceId et la chaîne Version (par défaut "PDF/E-1")
Renvoie True en cas de succès. Renvoie False si SaveAs de base a échoué ou si la mise à jour incrémentielle n'a pas pu être attachée (généralement un trailer invalide dans les octets enregistrés)
http://www.aiim.org/pdfe/ns/id/ (convention industrielle AIIM, correspondant aux URI pdfa / pdfua). Le texte d’ISO 24517-1:2008 §13.3 imprime cet URI sans l’une des lettres « i », ce qui semble être une coquille. Remplacez via TPdfESaveOptions.Version si un validateur exige l’orthographe stricte de la spec
// Simple PDF/E-1 output, options auto-populated from the document
if Pdf1.SaveAsPdfE('C:\Drawing.pdfe.pdf') then
ShowMessage('Saved PDF/E-1');
// With explicit options (Title overridden, custom Producer)
var
Opts: TPdfESaveOptions;
begin
Opts := TPdfESaveOptions.Default;
Opts.Title := 'Bridge Assembly Drawing - Sheet 12';
Opts.Producer := 'PDFium Delphi Component';
Pdf1.SaveAsPdfE('C:\Bridge.pdfe.pdf', Opts);
end;