CompressPage
Thuộc tính trang
Mô tả
Nén content stream của trang đang chọn bằng Flate (zlib). Hành vi giống hệt CompressContent nhưng giới hạn một trang. Lặp qua từng trang bằng SelectPage và CompressPage cho kết quả như một lần gọi CompressContent, với lợi thế là ứng dụng có thể báo tiến trình từng trang trong UI
Cú pháp
Delphi
Function TPDFlib.CompressPage: Integer;
ActiveX
Function PDFlib::CompressPage() As Long
DLL
int DLCompressPage(int InstanceID);
Giá trị trả về
| 0 | Failed — no document is open or no page is selected. |
|---|---|
| 1 | Content stream của trang đã được nén (hoặc vốn đã nén và được giữ nguyên) |
Ghi chú
Các stream đã nén sẵn bị bỏ qua, nên gọi CompressPage hai lần trên cùng một trang vô hại. Bản Win64 dùng bộ object SIMD zlib-ng kèm sẵn; bản Win32 dùng bộ object zlib-ng generic ở chế độ tương thích zlib
Ví dụ
// 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;Xem thêm
CompressContent, CompressImages, CompressFonts, SelectPage, PageCount