CompressPage

Sideegenskaber

Beskrivelse

Komprimerer indholdsstrømmen på den aktuelt valgte side med Flate (zlib). Funktionsmåden er identisk med CompressContent, men begrænset til én side. Gennemløb af alle sider med SelectPage og CompressPage giver samme resultat som ét kald til CompressContent, med den fordel at programmet kan vise status pr. side i brugergrænsefladen.

Syntaks

Delphi

Function TPDFlib.CompressPage: Integer;

ActiveX

Function PDFlib::CompressPage() As Long

DLL

int DLCompressPage(int InstanceID);

Returværdier

0Mislykkedes — intet dokument er åbent, eller ingen side er valgt.
1Sidens indholdsstream blev komprimeret (eller var allerede komprimeret og blev bevaret uændret).

Bemærkninger

Allerede komprimerede strømme springes over, så det er ufarligt at kalde CompressPage to gange på den samme side. Win64-buildet bruger det medfølgende zlib-ng SIMD-objektsæt; Win32-buildet bruger det generiske zlib-ng-objektsæt i zlib-kompatibel tilstand.

Eksempel

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

Se også

CompressContent, CompressImages, CompressFonts, SelectPage, PageCount