RecompressStreams
Thuộc tính tài liệu, Tối ưu hóa
Mô tả
Nén lại mọi stream FlateDecode thuần của tài liệu đang chọn ở mức nén hiện tại, giữ bản encode nhỏ hơn cho từng stream
Cú pháp
Delphi
Function TPDFlib.RecompressStreams: Integer;Giá trị trả về
| 0 | No document is selected or no stream became smaller. |
|---|---|
| N | Số stream được thay bằng bản encode nhỏ hơn |
Ghi chú
Chỉ các stream với đúng một filter /FlateDecode trơn mới đủ điều kiện; stream có tham số prediction, chuỗi filter khác và cross-reference stream giữ nguyên byte gốc. Stream hỏng bị bỏ qua vì dữ liệu nguồn phải decode ra một stream zlib hoàn chỉnh trước khi encode lại. Các stream độc lập chạy theo các lô có giới hạn cấu hình bởi SetOptimizationWorkers, còn bản thay thế được áp theo thứ tự object để đầu ra tất định. Thao tác báo tiến trình và Abort dừng được giữa các ranh giới khám phá và lô. Cách dùng điển hình là ghép SetCompressionLevel(9) với lời gọi này trước một lần lưu lưu trữ, giúp thu nhỏ các tài liệu vốn được ghi ở mức nén nhanh mà không đụng nội dung
Ví dụ
PDF.LoadFromFile('fast-written.pdf', '');
PDF.SetCompressionLevel(9);
Shrunk:= PDF.RecompressStreams;
PDF.SaveToFile('smaller.pdf');
PDF.SetCompressionLevel(0);Xem thêm
SetCompressionLevel, CompressContent, DownsampleImages, AuditDocumentSpace