CompressPage

Puslapio ypatybės

Aprašymas

Suspaudžia šiuo metu pasirinktojo puslapio turinio srautą naudodama Flate (zlib). Elgsena identiška CompressContent, bet apribota vienu puslapiu. Eiga per kiekvieną puslapį su SelectPage ir CompressPage duoda tą patį rezultatą kaip vienas CompressContent kvietimas, tik programa gali pranešti kiekvieno puslapio eigą sąsajoje

Sintaksė

Delphi

Function TPDFlib.CompressPage: Integer;

ActiveX

Function PDFlib::CompressPage() As Long

DLL

int DLCompressPage(int InstanceID);

Grąžinamos reikšmės

0Failed — no document is open or no page is selected.
1Puslapio turinio srautas suspaustas (arba jau buvo suspaustas ir paliktas toks, koks yra)

Pastabos

Jau suspaustieji srautai praleidžiami, todėl CompressPage iškvietimas dukart tam pačiam puslapiui nepavojingas. Win64 versija naudoja komplekte esantį zlib-ng SIMD objektų rinkinį; Win32 versija – bendrąjį zlib-ng objektų rinkinį zlib suderinamame režime

Pavyzdys

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

Taip pat žiūrėkite

CompressContent, CompressImages, CompressFonts, SelectPage, PageCount