SaveAsPdfX — schreibt die PDF/X-Ausgabe in jeden TStream, ohne über die Festplatte zu gehenfunction SaveAsPdfXToStream(Stream: TStream; const Options: TPdfXSaveOptions): Boolean;
SaveAsPdfXToStream ist das Streaming-Gegenstück zu
SaveAsPdfX — dieselben Ausgabebytes, geschrieben
in jeden durchsuchbaren TStream, den der Aufrufer
bereitstellt. Nützlich für die Einbindung in Prepress-Workflows,
bei denen PDF/X-Nutzdaten direkt in Druckportal-Schnittstellen,
MIS- / Job-Ticketing-Systeme, BLOB-Spalten, ZIP-Container oder
HTTP-Upload-Pipelines geschoben werden
Die Nachbearbeitung ist identisch zu SaveAsPdfX:
XMP-Einfügung mit dem pdfxid-Bezeichner und der
Beschreibung des Erweiterungsschemas, Umschreiben des Document
Information Dictionary mit GTS_PDFXVersion /
GTS_PDFXConformance / Trapped,
Aktualisierung des Katalogs mit /Metadata- und
/OutputIntents-Referenzen, OutputIntent-Wörterbuch mit
/S /GTS_PDFX und eingebettetem ICC-Profil sowie ein
/ID-Array im Trailer. Leere Optionsfelder werden aus
FPDF_GetMetaText / FPDF_GetFileIdentifier
automatisch befüllt
Gibt bei Erfolg True zurück. Der Ausgabestream bleibt
an der Position nach dem zuletzt geschriebenen Byte. Gibt
False zurück, wenn das Basis-SaveAs
fehlschlägt oder die Nachbearbeitung nicht angehängt werden kann
SaveAsPdfX: Anforderungen auf PDF/X-Inhaltsebene (Schrifteinbettung, Transparenzregeln für X-1a / X-3, OPI-Verbot usw.) werden nicht erzwungenOptions.IccProfileData + OutputConditionIdentifier für kommerzielle CMYK-WorkflowsTMemoryStream für In-Memory-Pipelines; die resultierenden Bytes können direkt an einen Content-Store oder eine Print-Submission-API übergeben werden
var
Stream: TMemoryStream;
Opts: TPdfXSaveOptions;
begin
Stream := TMemoryStream.Create;
try
Opts := TPdfXSaveOptions.Default;
Opts.Conformance := pxc4;
Opts.Title := 'Spring Catalogue 2026';
if Pdf1.SaveAsPdfXToStream(Stream, Opts) then
begin
Stream.Position := 0;
SubmitToPrinter(Stream);
end;
finally
Stream.Free;
end;
end;