PDFium Component Docs

Compressed Eigenschaft

Dieser API-Eintrag behält Bezeichner, Signaturen, Codeblöcke und PDF-Begriffe in ihrer Originalform.
Komponente: TPdf  ·  Unit: PDFium
Steuert, ob Ströme im Ausgabe-PDF bei Aufruf von SaveAs / Save mit FlateDecode komprimiert werden. Die Komprimierungs-Engine nach dem Speichern durchsucht das serialisierte PDF, ersetzt alle unkomprimierten Ströme durch ihre zlib-komprimierten Gegenstücke und baut die XRef-Tabelle neu auf. Bereits komprimierte Ströme werden unverändert durchgereicht

Syntax

property Compressed: Boolean; // default True

Beschreibung

Compressed steuert, ob der nächste Aufruf von SaveAs und verwandten Methoden eine Komprimierung der Ströme nach dem Schreiben anwendet. Wenn True — der Standard — serialisiert PDFiumPas das Dokument über PDFium und führt dann einen Durchlauf aus, der alle unkomprimierten Inhalts- / Metadatenströme durch FlateDecode-komprimierte Gegenstücke ersetzt und die Cross-Reference-Tabelle mit den neuen Offsets neu schreibt

Wenn False, werden Ausgabeströme unverändert geschrieben. Die resultierende Datei ist typischerweise 2-10× größer, aber in einem Texteditor lesbar, was beim Debuggen von Inhaltsströmen, beim Vergleichen zweier PDF-Revisionen mit diff oder beim Einspeisen der Ausgabe in ein PDF-Syntax-bewusstes Tool nützlich ist, das unkomprimierte Eingaben bevorzugt

Das Setzen von Compressed ändert nur das Verhalten des nächsten Speichervorgangs; das Dokument im Speicher bleibt unbeeinflusst. Ein Dokument, das komprimiert geladen wurde und mit Compressed := False gespeichert wird, wird bei der Ausgabe dekomprimiert; ein Dokument, das unkomprimiert geladen wurde und mit Compressed := True gespeichert wird, wird bei der Ausgabe komprimiert. Beim erneuten Durchlaufen eines vollständig komprimierten Dokuments mit Compressed := True entsteht eine nahezu identische Dateigröße — die Engine erkennt bereits komprimierte Ströme und komprimiert sie nicht erneut

Hinweise

Beispiel

// Save an uncompressed copy alongside the compressed original for debugging
begin
  Pdf.Active := True;
  Pdf.Compressed := True;
  Pdf.SaveAs('output.pdf'); // production copy
  Pdf.Compressed := False;
  Pdf.SaveAs('output_debug.pdf'); // human-readable copy
end;

Siehe auch

SaveAs, Save, Active, Password