PDFium Delphi Component Docs

SaveAsPdfAToStream-metodi

Component: TPdf  ·  Unit: PDFium
Muistivaihtoehto — kirjoittaa tulosteen mihin tahansa TStreamiin ilman välitallennusta levylle

Syntax

function SaveAsPdfAToStream(Stream: TStream; const Options: TPdfASaveOptions): Boolean;

Description

SaveAsPdfAToStream on SaveAsPdfA:n virtaava vastine — se tuottaa saman PDF/A-1b-tuloksen, mutta kirjoittaa lopputuloksen kutsujan antamaan mihin tahansa TStreamiin, joka tukee siirtymiä, väliaikaistiedoston sijaan. Hyödyllinen HTTP-lähetysputkille, BLOB-sarakkeille, muistissa toimiville välimuistikerroksille, arkistosäiliöille (ZIP / TAR) tai mille tahansa työnkululle, jossa PDF/A-tavujen ei koskaan tarvitse koskea levyyn

Jälkikäsittelylogiikka on identtinen SaveAsPdfA(FileName, Options) -kutsun kanssa: ensin ajetaan perus-SaveAs, sitten inkrementaalinen päivitys ruiskuttaa XMP-metatietovirran (joka siltaa Document Information Dictionaryn XMP-muotoon ISO 19005-1 6.7.3 / Cor.1 Table 1:n mukaan ja upottaa pdfaid-laajennusskeeman kuvauksen, jonka 6.7.8 edellyttää), OutputIntentin, joka viittaa upotettuun ICC-profiiliin (oletuksena sRGB, mukautettu jäsenen Options.IccProfileData kautta), katalogipäivityksen, joka kytkkee ne yhteen, sekä trailerin /ID-taulukon, jonka 6.1.3 edellyttää. Tyhjiksi jätetyt Options-kentät täytetään automaattisesti jäsenistä FPDF_GetMetaText ja FPDF_GetFileIdentifier, joten tyypillinen kutsuja asettaa vain Conformance-arvon

Palauttaa True onnistuessaan. Tulostevirta jää asentoon heti viimeisen kirjoitetun tavun jälkeen. Palauttaa False, jos perus-SaveAs epäonnistui tai jos PDF/A-jälkikäsittelyä ei voitu liittää (tyypillisesti siksi, että lähde-PDF oli salattu, mitä PDF/A kieltää)

Remarks

Example

var
  Stream: TMemoryStream;
  Opts: TPdfASaveOptions;
begin
  Stream := TMemoryStream.Create;
  try
    Opts := Default(TPdfASaveOptions);
    Opts.Conformance := pac1b;
    if Pdf1.SaveAsPdfAToStream(Stream, Opts) then
    begin
      Stream.Position := 0;
      UploadToArchive(Stream);
    end;
  finally
    Stream.Free;
  end;
end;

See Also

SaveAsPdfA, ValidatePdfA, PdfAConformance, SaveAs