PDFium Delphi Component Docs

SaveAsPdfXToStream Methode

Komponente: TPdf  ·  Unit: PDFium
Schreibt einen PDF/X-Kandidaten in einen positionierbaren Stream im Eigentum des Aufrufers, mit denselben Profilregeln wie SaveAsPdfX

Syntax

function SaveAsPdfXToStream(Stream: TStream; const Options: TPdfXSaveOptions): Boolean;

Beschreibung

SaveAsPdfXToStream ist das Streaming-Gegenstück zu SaveAsPdfX — dieselben Ausgabe-Bytes, geschrieben in einen beliebigen, positionierbaren TStream, den der Aufrufer bereitstellt. Nützlich für die Einbindung in Prepress-Workflows, bei denen PDF/X-Payloads direkt in Druck- Einreichungsportale, MIS-/Job-Ticketing-Systeme, BLOB-Spalten, ZIP- Container oder HTTP-Upload-Pipelines geschoben werden

Die Nachbearbeitung ist identisch mit SaveAsPdfX: XMP-Injektion mit dem pdfxid-Bezeichner und der Erweiterungs-Schema-Beschreibung, Neuschreibung des Document Information Dictionary mit GTS_PDFXVersion / GTS_PDFXConformance / Trapped, Katalog-Update mit /Metadata- und /OutputIntents-Referenzen, OutputIntent-Wörterbuch mit /S /GTS_PDFX und eingebettetem ICC-Profil sowie ein Trailer-/ID-Array Leergelassene Optionsfelder werden automatisch aus FPDF_GetMetaText / FPDF_GetFileIdentifier gefüllt

Liefert True nach der Serialisierung zurück und lässt den Ausgabe-Stream hinter dem letzten geschriebenen Byte stehen Liefert False bei einem inaktiven Dokument oder fehlgeschlagenem Basis-Speichern; ein erfolgreicher Rückgabewert ist noch kein vollständiges PDF/X-Konformitätsurteil

Für pxc1a geben Sie in Options.IccProfileData ein strukturell gültiges ICC-v2-Output-Profil mit Device-Klasse prtr, CMYK-Daten, einem Lab- oder XYZ-PCS und den erforderlichen bidirektionalen LUTs an Fehlende oder ungeeignete Daten lösen EArgumentException aus, bevor der Ziel-Stream verändert wird

Bei PDF/X-1a werden Output-Condition-Labels, die noch dem eingebauten sRGB-Standard entsprechen, durch die geprüfte ICC-Beschreibung ersetzt Fehlt diese Beschreibung, ist ein expliziter, nicht leerer und nicht standardmäßiger OutputConditionIdentifier nötig, der das Ersatz-Label liefert Explizite Labels bleiben erhalten; siehe SaveAsPdfX für die betroffenen Felder

Hinweise

Beispiel

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;

Siehe auch

SaveAsPdfX, ValidatePdfX, PdfXConformance, SaveAs