function SaveAsPdfVT(const FileName: string): Boolean; overload;
function SaveAsPdfVT(const FileName: string; const Options: TPdfVTSaveOptions): Boolean; overload;
SaveAsPdfVT utför först den vanliga SaveAs och lägger sedan en inkrementell uppdatering ovanpå de sparade byten som höjer filen till överensstämmelse med PDF/VT-1 i en enda fil. PDF/VT är delmängden av PDF enligt ISO 16612-2 som är avsedd för utskrift med variella data och transaktioner — personligt anpassad post, kontoutdrag, marknadsföringsmaterial — där varje mottagares sidor grupperas genom en Document Part Hierarchy
PDF/VT-1 bygger på PDF/X-4 (ISO 16612-2 §6.2.1 kräver att varje PDF/VT-1-fil även överensstämmer med PDF/X-4), så injektorn skriver hela PDF/X-4-marköruppsättningen tillsammans med de PDF/VT-specifika egenskaperna:
pdfxid:GTS_PDFXVersion = "PDF/X-4") och PDF/VT-identifiering (pdfvtid:GTS_PDFVTVersion = "PDF/VT-1" med pdfvtid:GTS_PDFVTModDate i linje med xmp:ModifyDate enligt §6.3 NOTE 1), plus en beskrivning av typen pdfaExtension:schemas för namnrymderna pdfxid och pdfvtid/GTS_PDFXVersion (PDF/X-4) och /Trapped. Befintliga Info-poster bevaras/Metadata och /OutputIntents/Type /OutputIntent /S /GTS_PDFX och en inbäddad ICC-profil (sRGB som standard; tillhandahåll CMYK via Options.IccProfileData för produktionstryck)/DPartRoot- och /DPart-hierarki på dokumentnivå när källdokumentet inte redan innehåller en användbar sådan, där varje sida länkas via sin /DPart-post/ID-array i trailernStandardalternativen riktar sig mot PDF/VT-1 med den medföljande
sRGB OutputIntent och /Trapped /False. De två överlagringarna
skiljer sig bara i hur konfigurationen skickas in: formen med enbart
filnamn fyller i Info-fält och DocumentId automatiskt från
FPDF_GetMetaText / FPDF_GetFileIdentifier
Returnerar True vid lyckat resultat
/DPartRoot-dictionary i katalogen med ett träd av /DPart-noder. När källdokumentet saknar en användbar hierarki, eller när hierarkin inte klarar samma träd- och ordningskontroller som ValidatePdfVT, skapar SaveAsPdfVT en DPart på dokumentnivå som täcker den aktuella sidträdsordningen. Arbetsflöden som behöver metadata för mottagare, produkt eller postförsändelse bör skapa ett rikare DPart/DPM-träd före sparningen eller utöka det genererade trädet efteråtTPdfVTSaveOptions.Conformance = pvc2 accepteras av kompatibilitetsskäl, men enfilsskrivaren normaliserar utmatningen till PDF/VT-1. PDF/VT-2 är en filmängdsprofil vars giltiga PDF/X-baser är PDF/X-4p, PDF/X-5g eller PDF/X-5pg, så den kan inte produceras av den här metoden med en enda utmatningsfilOptions.IccProfileData tillsammans med matchande OutputCondition / OutputConditionIdentifier / RegistryName
// Simple PDF/VT-1 with bundled sRGB OutputIntent
if Pdf1.SaveAsPdfVT('C:\Statements.pdfvt.pdf') then
ShowMessage('Saved PDF/VT-1');
// PDF/VT-1 with a CMYK ICC profile for commercial print
var
Opts: TPdfVTSaveOptions;
begin
Opts := TPdfVTSaveOptions.Default;
Opts.IccProfileData := TFile.ReadAllBytes('C:\ICC\FOGRA39.icc');
Opts.OutputCondition := 'Coated FOGRA39 (ISO 12647-2:2004)';
Opts.OutputConditionIdentifier:= 'FOGRA39';
Pdf1.SaveAsPdfVT('C:\BillingRun.pdfvt.pdf', Opts);
end;