function SaveAsPdfE(const FileName: string): Boolean; overload;
function SaveAsPdfE(const FileName: string; const Options: TPdfESaveOptions): Boolean; overload;
SaveAsPdfE voert eerst de gewone SaveAs uit en legt daar vervolgens een incrementele update bovenop die het bestand naar een PDF/E-1-archief verheft (ISO 24517-1:2008, het technische-documentformaat afgeleid van PDF 1.6). De nabewerking voegt vier soorten markeringen toe aan de opgeslagen stream
pdfe:ISO_PDFEVersion = "PDF/E-1") plus de bijbehorende pdfaExtension:schemas-beschrijving voor de pdfe-namespace, en overbrugde Dublin Core / xmp / pdf-eigenschappen die zijn afgeleid van 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)-entry toevoegt die vereist is door de SHALL-clausule van §5. Het Info-object behoudt zijn oorspronkelijke objectnummer; door PDFium gegenereerde Info-entry's blijven ongemoeid. Wanneer de brontrailer geen /Info bevat, wordt een nieuwe Info-dictionary samengesteld en wordt een nieuwe /Info-verwijzing in de trailer geschreven/Metadata-verwijzing naar de nieuwe XMP-stream/ID-array (§6.2): hergebruikt uit FPDF_GetFileIdentifier wanneer de bron-PDF er al een bevat, anders deterministisch afgeleid uit de bronbytesDe uitvoer blijft byte-identiek aan het resultaat van de basis-SaveAs tot het einde van de originele PDF; alleen de incrementele update wordt toegevoegd. Lezers die PDF/E niet begrijpen, renderen het bestand nog steeds precies zoals reguliere SaveAs dat zou doen. De twee overloads verschillen alleen in hoe de configuratie wordt doorgegeven: de vorm met alleen een bestandsnaam gebruikt TPdfESaveOptions.Default met automatische invulling uit FPDF_GetMetaText en FPDF_GetFileIdentifier, terwijl de TPdfESaveOptions-vorm de aanroeper laat overschrijven Title, Author, Subject, Keywords, Creator, Producer, CreationDate, ModDate, DocumentId, InstanceId en de Version-string (standaard "PDF/E-1")
Returns True on success. Returns False if
the base SaveAs failed or if the incremental update could not be
attached (typically an invalid trailer in the saved bytes).
http://www.aiim.org/pdfe/ns/id/ (AIIM industry convention, matching pdfa / pdfua URIs). The text of ISO 24517-1:2008 §13.3 prints this URI without one of the "i" letters, which appears to be a typo. Override via TPdfESaveOptions.Version if a validator demands the strict-spec spelling.
// 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 := 'PDFiumPas';
Pdf1.SaveAsPdfE('C:\Bridge.pdfe.pdf', Opts);
end;