CompressContent
Documenteigenschappen
Beschrijving
Comprimeert elke paginacontentstream in het momenteel geselecteerde document. Het Flate (zlib)-algoritme wordt gebruikt, zodat de resulterende streams een /FlateDecode-filter meedragen wanneer het document wordt opgeslagen. Al gecomprimeerde streams blijven onaangeroerd
Op Windows wordt de meegeleverde zlib-ng-backend in zlib-compatibele modus gebruikt. Win64-builds linken de bcc64x zlib-ng runtime SIMD-objectset; Win32 houdt de op compatibiliteit gerichte generieke objectset. Bestaande Delphi-, ActiveX-, DLL- en C++Builder-code hoeft niet te worden gewijzigd
Syntaxis
Delphi
Function TPDFlib.CompressContent: Integer;
ActiveX
Function PDFlib::CompressContent() As Long
DLL
int DLCompressContent(int InstanceID);
Retourwaarden
| 0 | No document is open or compression failed. |
|---|---|
| 1 | De contentstreams van de pagina zijn met succes gecomprimeerd |
Opmerkingen
Dit is een documentbrede bewerking. Gebruik CompressPage als je alleen de momenteel geselecteerde pagina hoeft te comprimeren. Om te sturen of net toegevoegde afbeeldingen en fonts gecomprimeerd worden opgeslagen, gebruik respectievelijk CompressImages en CompressFonts
Draai dit één keer vóór SaveToFile wanneer je een net gebouwd document verkleint; de besparing is op tekstzware pagina's doorgaans groot en op pagina's die vooral uit vooraf gecomprimeerde afbeeldingsdata bestaan verwaarloosbaar
Voorbeeld
// 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');