Aspose.PDF for .NET(ver.23.2)を利用しPDF圧縮処理を実装しているのですが、添付ファイル1は大幅に圧縮できているのに対し、
添付ファイル1.pdf (4.7 MB)
添付ファイル2.pdf (3.0 MB)
添付ファイル2はほとんど圧縮することができておりません。
↓圧縮後のファイルサイズ
添付ファイル1.pdf (4,826KB)⇒1,746KB
添付ファイル2.pdf (3,116KB)⇒3,013KB
各種パラメータの設定は以下の通りです。
LinkDuplcateStreams = true;
RemoveUnusedObjects = true;
RemoveUnusedStreams = true;
MaxResoultion = 72;
ImageCompressionOptions.ResizeImages = true;
ImageCompressionOptions.CompressImages = true;
ImageCompressionOptions.ImageQuality = 50;
添付ファイル1、2ともに圧縮可能なパラメータの設定をご教授いただきたいです。
また、今後パラメータを設定する際に何を参考に設定すればよいかもご教授いただければ幸いです。
お手数おかけしますが、よろしくお願いいたします。
@Shunsuke_Kumai
要約
PDF のサイズは画像の圧縮・リサイズ、未使用オブジェクトやストリームの除去、メタデータの削除によって大きく変わります。Aspose.PDF for .NET では OptimizationOptions と Document.OptimizeResources、Document.Optimize、Document.RemoveMetadata を組み合わせて実行することで、ほとんどのケースでサイズを削減できます。
原因
- 画像リサイズが有効になっていない可能性 –
ImageCompressionOptions.MaxResolution が正しく設定されていないと、画像はリサイズされません。
- 最適化手順が不足 –
OptimizeResources だけでは未使用オブジェクトやストリームの除去が完了しません。Optimize と RemoveMetadata を併用する必要があります。
次にすべきこと
- 最適化オプションを正しく設定
var opt = new Aspose.Pdf.Optimization.OptimizationOptions
{
LinkDuplicateStreams = true,
RemoveUnusedObjects = true,
RemoveUnusedStreams = true,
ImageCompressionOptions = new Aspose.Pdf.Optimization.ImageCompressionOptions
{
CompressImages = true,
ResizeImages = true,
MaxResolution = 72, // 画像の最大解像度 (dpi)
ImageQuality = 50 // 0‑100 の品質 (必要に応じて調整)
}
};
- 最適化手順を実行
using (var pdf = new Aspose.Pdf.Document("input.pdf"))
{
pdf.OptimizeResources(opt); // 画像圧縮・リサイズ
pdf.Optimize(); // 未使用オブジェクト・ストリームの除去
pdf.RemoveMetadata(); // XMP/Info メタデータの除去
pdf.Save("output_optimized.pdf");
}
- 効果が出にくい場合の調整
- 画像がすでに高圧縮 JPEG の場合は
ImageQuality を 30〜20 程度に下げて再圧縮を試す。
MaxResolution を 50 前後に下げると、解像度が高い画像のサイズがさらに削減できることがあります。
- 必要に応じてフォントのサブセット化や不要な添付ファイルの除去を検討してください(これらは
RemoveMetadata で一部対応します)。
チェックリスト
OptimizationOptions に LinkDuplicateStreams、RemoveUnusedObjects、RemoveUnusedStreams と画像圧縮オプションを設定する。
OptimizeResources → Optimize → RemoveMetadata の順に呼び出し、PDF を保存する。
- 圧縮後のサイズが期待に満たない場合は
ImageQuality と MaxResolution をさらに低く設定して再実行する。
この手順で画像中心の PDF でもサイズ削減が期待できます。必要に応じて各パラメータを微調整し、最適なバランスを見つけてください。