CompressContent

Dokumenteigenschaften

Beschreibung

Komprimiert jeden Seiteninhaltsstream im aktuell ausgewählten Dokument. Der Flate-Algorithmus (zlib) wird verwendet, sodass die resultierenden Streams beim Speichern des Dokuments einen /FlateDecode-Filter besitzen. Bereits komprimierte Streams bleiben unverändert

Unter Windows wird das gebündelte zlib-ng-Backend im zlib-kompatiblen Modus verwendet. Win64-Builds binden den bcc64x-zlib-ng-Laufzeit-SIMD-Objektsatz ein; Win32 behält den kompatibilitätsorientierten generischen Objektsatz. Vorhandener Delphi-, ActiveX-, DLL- und C++Builder-Code erfordert keine Quelländerungen.

Syntax

Delphi

Function TPDFlib.CompressContent: Integer;

ActiveX

Function PDFlib::CompressContent() As Long

DLL

int DLCompressContent(int InstanceID);

Rückgabewerte

0Es ist kein Dokument geöffnet oder die Komprimierung ist fehlgeschlagen
1Die Seiteninhaltsstreams wurden erfolgreich komprimiert

Anmerkungen

Dies ist ein dokumentweiter Vorgang. Verwenden Sie CompressPage, wenn nur die aktuell ausgewählte Seite komprimiert werden soll. Um festzulegen, ob neu hinzugefügte Bilder und Schriftarten komprimiert gespeichert werden, verwenden Sie CompressImages beziehungsweise CompressFonts

Führen Sie dies einmal vor SaveToFile aus, wenn ein neu erstelltes Dokument verkleinert werden soll; bei textlastigen Seiten sind die Einsparungen typischerweise groß, bei Seiten, die überwiegend aus vorkomprimierten Bilddaten bestehen, dagegen gering

Beispiel

// Build a document, compress everything, then save
PDF.NewDocument;
PDF.AddStandardFont('Helvetica');
PDF.AddPage;
PDF.PrintText(50, 750, 'Compressed document');

PDF.CompressContent;                   // page streams -> /FlateDecode
PDF.CompressImages(1);                 // also flate-encode any subsequent images
PDF.SaveToFile('compressed.pdf');

Siehe auch

CompressPage, CompressImages, CompressFonts, SaveToFile