CompressContent

Propriedades do documento

Descrição

Comprime todo content stream de página do documento selecionado no momento. O algoritmo Flate (zlib) é usado, de modo que os streams resultantes levam um filtro /FlateDecode quando o documento é salvo. Streams já comprimidos ficam intocados.

No Windows, o backend zlib-ng embutido é usado em modo compatível com zlib. Builds Win64 linkeditam o conjunto de objetos SIMD do runtime zlib-ng do bcc64x; o Win32 mantém o conjunto de objetos genérico focado em compatibilidade. Código Delphi, ActiveX, DLL e C++Builder existente não precisa de nenhuma mudança no código-fonte

Sintaxe

Delphi

Function TPDFlib.CompressContent: Integer;

ActiveX

Function PDFlib::CompressContent() As Long

DLL

int DLCompressContent(int InstanceID);

Valores retornados

0No document is open or compression failed.
1Os content streams da página foram comprimidos com sucesso.

Observações

Esta é uma operação para o documento inteiro. Use CompressPage se você só precisa comprimir a página selecionada no momento. Para controlar se imagens e fontes recém-adicionadas são armazenadas comprimidas, use CompressImages e CompressFonts, respectivamente.

Rode isto uma vez antes de SaveToFile ao encolher um documento recém-construído; a economia costuma ser grande em páginas pesadas de texto e desprezível em páginas compostas majoritariamente por dados de imagem pré-comprimidos.

Exemplo

// 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');

Veja também

CompressPage, CompressImages, CompressFonts, SaveToFile