CompressPage
Propriedades de página
Descrição
Comprime o fluxo de conteúdo da página atualmente selecionada através de Flate (zlib). O comportamento é idêntico a CompressContent, mas limitado a uma única página. Percorrer todas as páginas com SelectPage e CompressPage produz o mesmo resultado que uma chamada de CompressContent, com a vantagem de a aplicação poder comunicar na interface o progresso por página
Sintaxe
Delphi
Function TPDFlib.CompressPage: Integer;
ActiveX
Function PDFlib::CompressPage() As Long
DLL
int DLCompressPage(int InstanceID);
Valores devolvidos
| 0 | Falha — não existe um documento aberto ou nenhuma página está selecionada |
|---|---|
| 1 | O fluxo de conteúdo da página foi comprimido (ou já estava comprimido e foi mantido sem alterações) |
Observações
Os fluxos já comprimidos são ignorados, pelo que chamar CompressPage duas vezes na mesma página é inofensivo. A compilação Win64 utiliza o conjunto de objetos zlib-ng SIMD incluído; a compilação Win32 utiliza o conjunto genérico de objetos zlib-ng no modo compatível com zlib
Exemplo
// Compress every page individually so the UI can report progress
var
I, N: Integer;
begin
N := PDF.GetPageCount;
for I := 1 to N do
begin
PDF.SelectPage(I);
PDF.CompressPage;
ProgressBar1.Position := (I * 100) div N;
Application.ProcessMessages;
end;
PDF.SaveToFile('compressed.pdf');
end;Consulte também
CompressContent, CompressImages, CompressFonts, SelectPage, PageCount