CompressImages
Quản lý ảnh, Thuộc tính tài liệu
Mô tả
Đặt chế độ nén mặc định áp dụng cho dữ liệu ảnh raster thô thêm vào tài liệu sau lời gọi này. Thiết lập ảnh hưởng đến các ảnh có pixel được tải lên chưa nén (BMP, mảng pixel thô); các ảnh đã nén sẵn (JPEG, JPEG 2000, CCITT, JBIG2) giữ encoding hiện có và lưu nguyên bản, vì nén lại chỉ làm file phình to và giảm chất lượng
Cú pháp
Delphi
Function TPDFlib.CompressImages(Compress: Integer): Integer;
ActiveX
Function PDFlib::CompressImages(Compress As Long) As Long
DLL
int DLCompressImages(int InstanceID, int Compress);
Tham số
| Compress | 0 — store raw raster images uncompressed. 1 — flate-compress raw raster images ( /FlateDecode filter). |
|---|
Giá trị trả về
| 0 | Tham số Compress vượt khoảng hợp lệ |
|---|---|
| 1 | Thiết lập nén ảnh đã được cập nhật |
Ghi chú
Thiết lập chỉ ảnh hưởng các ảnh thêm vào sau lời gọi. Mặc định là nén. Tắt nén thỉnh thoảng hữu ích khi tích hợp với một renderer hạ nguồn không hỗ trợ stream ảnh flate-decoded; dùng bình thường thì cứ để nén bật
Nén flate không mất dữ liệu. Để nén ảnh raster thô có mất dữ liệu (JPEG), hãy mã hóa nguồn sang JPEG trước khi thêm và dùng AddImageFromFile hoặc AddImageFromStream – khi đó luồng byte JPEG được nhúng trực tiếp với bộ lọc /DCTDecode.
Ví dụ
// Compress raw bitmaps but leave the pre-encoded JPEG as-is
PDF.CompressImages(1);
PDF.AddImageFromFile('logo.bmp'); // BMP -> flate compressed
PDF.AddImageFromFile('photo.jpg'); // JPEG bytes embedded directly (DCT)
PDF.AddImageFromFile('chart.png'); // PNG decoded -> flate compressedXem thêm
CompressContent, CompressFonts, AddImageFromFile, AddImageFromStream