CompressPage

Seiteneigenschaften

Beschreibung

Komprimiert den Inhaltsstrom der aktuell ausgewählten Seite mit Flate (zlib). Das Verhalten ist mit CompressContent identisch, jedoch auf eine einzelne Seite begrenzt. Das Durchlaufen aller Seiten mit SelectPage und CompressPage erzeugt dasselbe Ergebnis wie ein Aufruf von CompressContent, bietet der Anwendung aber die Möglichkeit, den Fortschritt pro Seite in der Benutzeroberfläche anzuzeigen

Syntax

Delphi

Function TPDFlib.CompressPage: Integer;

ActiveX

Function PDFlib::CompressPage() As Long

DLL

int DLCompressPage(int InstanceID);

Rückgabewerte

0Fehlgeschlagen — es ist kein Dokument geöffnet oder keine Seite ausgewählt.
1Der Inhaltsstream der Seite wurde komprimiert (oder war bereits komprimiert und blieb unverändert).

Anmerkungen

Bereits komprimierte Streams werden übersprungen, sodass ein zweimaliger Aufruf von CompressPage für dieselbe Seite unschädlich ist. Der Win64-Build verwendet den gebündelten zlib-ng-SIMD-Objektsatz; der Win32-Build verwendet den generischen zlib-ng-Objektsatz im zlib-kompatiblen Modus

Beispiel

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

Siehe auch

CompressContent, CompressImages, CompressFonts, SelectPage, PageCount