CompressPage

페이지 속성

설명

현재 선택한 페이지의 콘텐츠 스트림을 Flate(zlib)로 압축합니다. 동작은 CompressContent와 동일하지만 한 페이지로 제한됩니다. 각 페이지를 SelectPage로 순회하면서 CompressPage를 실행하면 CompressContent를 한 번 호출한 것과 같은 결과를 얻으며, 애플리케이션이 UI에서 페이지별 진행률을 보고할 수 있다는 이점이 있습니다

구문

Delphi

Function TPDFlib.CompressPage: Integer;

ActiveX

Function PDFlib::CompressPage() As Long

DLL

int DLCompressPage(int InstanceID);

반환 값

0실패 — 열린 문서가 없거나 선택한 페이지가 없습니다
1페이지의 콘텐츠 스트림이 압축되었거나 이미 압축되어 그대로 유지되었습니다

비고

이미 압축된 스트림은 건너뛰므로 같은 페이지에 CompressPage를 두 번 호출해도 문제가 없습니다 Win64 빌드는 번들 zlib-ng SIMD 개체 집합을 사용하고 Win32 빌드는 zlib 호환 모드의 일반 zlib-ng 개체 집합을 사용합니다

예제

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

참고 항목

CompressContent, CompressImages, CompressFonts, SelectPage, PageCount