CompressImages
画像処理、ドキュメントプロパティ
説明
この呼び出し後に文書へ追加される生ラスター画像データに適用する既定の圧縮モードを設定します。非圧縮でアップロードされる画像(BMP、生ピクセル配列)に影響し、既に圧縮済みの画像(JPEG、JPEG 2000、CCITT、JBIG2)は既存のエンコーディングを保持してそのまま保存されます。再圧縮するとファイルが膨らみ品質が低下するためです
構文
Delphi
Function TPDFlib.CompressImages(Compress: Integer): Integer;
ActiveX
Function PDFlib::CompressImages(Compress As Long) As Long
DLL
int DLCompressImages(int InstanceID, int Compress);
パラメータ
| Compress | 0 — 未圧縮の生ラスター画像を保存します 1 — 生ラスター画像を flate 圧縮します( /FlateDecode フィルター) |
|---|
戻り値
| 0 | Compress パラメーターが範囲外でした |
|---|---|
| 1 | 画像圧縮設定が更新されました |
備考
この設定は、呼び出し後に追加された画像にのみ影響します。既定では圧縮します。flate デコードされた画像ストリームをサポートしない下流レンダラーと統合する場合は圧縮をオフにすると役立つことがありますが、通常は圧縮を有効のままにしてください
Flate 圧縮は可逆圧縮です。生のラスター画像を非可逆 JPEG 圧縮するには、追加前にソースを JPEG にエンコードし、AddImageFromFile または AddImageFromStream を使用します。JPEG バイトストリームは /DCTDecode フィルターで直接埋め込まれます
例
// 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 compressed関連項目
CompressContent、CompressFonts、AddImageFromFile、AddImageFromStream