PDFium Delphi Component Docs

Metoda SaveAsObjectStream

Component: TPdf  ·  Unit: PDFium
Scrie o copie PDF 1.5+ compactă folosind fluxuri de obiecte mărginite și un flux xref complet

Syntax

function SaveAsObjectStream(Stream: TStream; Option: TSaveOption = saNone; PdfVersion: TPdfVersion = pvUnknown; MaxObjectsPerStream: Integer = 100; MaxDecodedBytesPerStream: Integer = 65536): Boolean;

function SaveAsObjectStream(const FileName: string; Option: TSaveOption = saNone; PdfVersion: TPdfVersion = pvUnknown; MaxObjectsPerStream: Integer = 100; MaxDecodedBytesPerStream: Integer = 65536): Boolean;

StreamTStream care primește PDF-ul complet cu fluxuri de obiecte
FileNameCalea de ieșire, înlocuită doar după ce un fișier temporar în același director reușește
OptionOpțiune de salvare normală sau saRemoveSecurity; saIncremental este respinsă
PdfVersionVersiunea de ieșire de la PDF 1.5 în sus, sau pvUnknown pentru a păstra sau a actualiza versiunea curentă
MaxObjectsPerStreamNumărul maxim de membri obiect per grup ObjStm; implicit este 100
MaxDecodedBytesPerStreamÎncărcătura maximă decodată de membri per grup; implicit este 65536 de octeți

Return Value

Returnează True când ieșirea cu fluxuri de obiecte a fost finalizată cu succes

Description

Metoda folosește mai întâi calea normală de salvare PDFium ca sursă semantică, apoi rezolvă revizia activă clasică, hibridă sau cu flux xref

Membrii existenți ai fluxurilor de obiecte sunt materializați înainte ca referințele să fie renumerotate în ordine locală paginilor

Obiectele non-stream eligibile sunt grupate atât după numărul de membri, cât și după dimensiunea decodată a încărcăturii, apoi comprimate cu Flate doar atunci când comprimarea reduce grupul

Catalogul, obiectele stream, dicționarele de semnături, lungimile indirecte ale fluxurilor și valorile supradimensionate rămân direct adresabile

Un flux xref pur folosește lățimi adaptive ale câmpurilor și intrări de tip 2 pentru fiecare membru comprimat

Constraints

Example

// Balance compact output with bounded random-access decompression
Pdf.SaveAsObjectStream('report-compact.pdf', saNoIncremental, pv17, 100, 65536);

See Also

SaveAs, SaveAsLinearized