PDFium Delphi Component Docs

SaveAsPdfUaToStream Metod

Component: TPdf  ·  Unit: PDFium
Minnesvarianten av SaveAsPdfUa — skriver PDF/UA-1-utmatningen till valfri TStream utan att mellanlagra på disk

Syntax

function SaveAsPdfUaToStream(Stream: TStream; const Options: TPdfUaSaveOptions): Boolean;

Description

SaveAsPdfUaToStream är strömmotsvarigheten till SaveAsPdfUa — den producerar samma PDF/UA-1-utmatning men skriver resultatet till en valfri sökbar TStream som anroparen tillhandahåller. Användbar för HTTP-uppladdningspipelines, BLOB-kolumner, cacheminneslager, arkivcontainer (ZIP / TAR) eller alla arbetsflöden där PDF/UA-bytena aldrig behöver röra disken

Efterbearbetningslogiken är identisk med SaveAsPdfUa(FileName, Options): bas-SaveAs körs först, därefter injicerar en inkrementell uppdatering XMP-metadataströmmen (med obligatorisk dc:title enligt ISO 14289-1 §7.1 och tilläggsschemabeskrivningen för pdfuaid), katalogposterna /MarkInfo och /ViewerPreferences när källan saknar dem, katalogposten /Lang när anroparen tillhandahöll en BCP 47-tagg och en /ID-array i trailern. Tomma fält i Options fylls i automatiskt från PDFium-läsare (FPDF_GetMetaText, FPDF_GetFileIdentifier, FPDFCatalog_GetLanguage), så en typisk anropare sätter bara DocumentTitle eller Language om det behövs

Returnerar True vid lyckat resultat. Utmatningsströmmen lämnas vid positionen efter den senast skrivna byten. Returnerar False om bas-SaveAs misslyckades eller om efterbearbetningen inte kunde bifogas (vanligtvis en krypterad källa)

Remarks

Example

var
  Stream: TMemoryStream;
  Opts: TPdfUaSaveOptions;
begin
  Stream := TMemoryStream.Create;
  try
    Opts := TPdfUaSaveOptions.Default;
    Opts.DocumentTitle := 'Quarterly Report';
    Opts.Language := 'en';
    if Pdf1.SaveAsPdfUaToStream(Stream, Opts) then
    begin
      Stream.Position := 0;
      UploadToArchive(Stream);
    end;
  finally
    Stream.Free;
  end;
end;

See Also

SaveAsPdfUa, ValidatePdfUa, PdfUaConformance, SaveAs