CompressPage

Sidegenskaper

Beskrivning

Komprimerar den för tillfället valda sidans innehållsström med Flate (zlib). Beteendet är identiskt med CompressContent men begränsat till en enda sida. Att loopa igenom varje sida med SelectPage och CompressPage ger samma resultat som ett anrop av CompressContent, med fördelen att programmet kan rapportera förlopp per sida i UI:t

Syntax

Delphi

Function TPDFlib.CompressPage: Integer;

ActiveX

Function PDFlib::CompressPage() As Long

DLL

int DLCompressPage(int InstanceID);

Returvärden

0Misslyckades — inget dokument är öppet eller ingen sida är vald
1Sidans innehållsström komprimerades (eller var redan komprimerad och lämnades som den var)

Anmärkningar

Redan komprimerade strömmar hoppas över, så att anropa CompressPage två gånger på samma sida är harmlöst. Win64-bygget använder den bifogade zlib-ng SIMD-objektuppsättningen; Win32-bygget använder den generiska zlib-ng-objektuppsättningen i zlib-kompatibelt läge

Exempel

// 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 även

CompressContent, CompressImages, CompressFonts, SelectPage, PageCount