function SaveAsPdfEToStream(Stream: TStream; const Options: TPdfESaveOptions): Boolean;
SaveAsPdfEToStream je tokovni pandan
SaveAsPdfE — proizvodi isti PDF/E-1 izlaz,
ali upisuje rezultat u bilo koji seekable TStream koji pozivalac obezbedi.
Korisno za integraciju inženjerskih tokova rada gde se PDF/E sadržaji
guraju direktno u PLM / PDM sisteme, BLOB kolone, arhivske
kontejnere ili procese HTTP otpremanja bez dodirivanja diska
Logika post-procesiranja identična je
SaveAsPdfE(FileName, Options): prvo se izvodi
osnovni SaveAs, a zatim inkrementalna dopuna ubacuje tok XMP
metapodataka (sa pdfe:ISO_PDFEVersion i opisom šeme ekstenzije),
prepisuje Document Information Dictionary da doda obavezni
unos /ISO_PDFEVersion (PDF/E-1), ažurira katalog
da referencira novi XMP i emituje trailer sa svežim nizom /ID
Polja Options ostavljena praznima se automatski popunjavaju iz PDFium
čitača (FPDF_GetMetaText, FPDF_GetFileIdentifier),
tako da tipičan pozivalac treba samo da prepiše polje Version za
nestandardne vrednosti Part / Amd / Corr
Vraća True pri uspehu. Izlazni tok ostaje
na poziciji poslednjeg upisanog bajta. Vraća False
ako osnovni SaveAs nije uspeo ili ako post-procesiranje nije moglo biti
prikačeno
/ISO_PDFEVersion. Postojeće vrednosti PDF/E verzije se zamenjuju
var
Stream: TMemoryStream;
Opts: TPdfESaveOptions;
begin
Stream := TMemoryStream.Create;
try
Opts := TPdfESaveOptions.Default;
Opts.Producer := 'CAD-Workflow 2026';
if Pdf1.SaveAsPdfEToStream(Stream, Opts) then
begin
Stream.Position := 0;
PushToPLM(Stream);
end;
finally
Stream.Free;
end;
end;