CompressPage

Pagina-eigenschappen

Beschrijving

Comprimeert de contentstream van de momenteel geselecteerde pagina met Flate (zlib). Het gedrag is identiek aan CompressContent maar beperkt tot één pagina. Elke pagina doorlopen met SelectPage en CompressPage levert hetzelfde resultaat op als één aanroep van CompressContent, met als voordeel dat de toepassing voortgang per pagina in de UI kan melden

Syntaxis

Delphi

Function TPDFlib.CompressPage: Integer;

ActiveX

Function PDFlib::CompressPage() As Long

DLL

int DLCompressPage(int InstanceID);

Retourwaarden

0Failed — no document is open or no page is selected.
1De contentstream van de pagina is gecomprimeerd (of was al gecomprimeerd en is ongewijzigd gelaten)

Opmerkingen

Al gecomprimeerde streams worden overgeslagen, dus CompressPage twee keer op dezelfde pagina aanroepen is ongevaarlijk. De Win64-build gebruikt de meegeleverde zlib-ng SIMD-objectset; de Win32-build gebruikt de generieke zlib-ng-objectset in zlib-compatibele modus

Voorbeeld

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

Zie ook

CompressContent, CompressImages, CompressFonts, SelectPage, PageCount