
PDF ファイルを圧縮してサイズを小さくすると、ストレージ容量が節約されるだけでなく、アップロードとダウンロードがより速くなります。このブログ投稿では、Java で PDF を圧縮する方法を検討し、ファイル サイズを削減し、全体的なパフォーマンスを最適化するテクニックを明らかにします。
PDF 圧縮 Java API - インストール
Downloads セクションからライブラリをインストールするか、次の Maven 構成で Conholdate.Total for Java を構成できます。
<dependency>
<groupId>com.conholdate</groupId>
<artifactId>conholdate-total</artifactId>
<version>23.10</version>
<type>pom</type>
</dependency>
Java で PDF を圧縮する理由
アップロードとダウンロードの高速化: PDF サイズが小さいほど、アップロードとダウンロードが高速になり、ユーザー エクスペリエンスが向上し、帯域幅が節約されます。
ストレージ効率: 圧縮 PDF は占有ディスク容量が少ないため、ストレージ ソリューションの管理が容易になり、コスト効率が高くなります。
最適化されたパフォーマンス: ファイルを圧縮すると、特に Web アプリケーションで読み込み時間が短縮され、その結果、ユーザー インターフェイスの応答性が向上し、効率的になります。
JavaでPDFを圧縮する
以下の手順に従って、Java で PDF ドキュメントを圧縮できます。
- Document クラスを使用してソース PDF ドキュメントを読み込みます。
- optimizeResources() メソッドを使用して PDF を圧縮します。
- save() メソッドを使用して圧縮 PDF ファイルをレンダリングします。
以下のコード スニペットは、Java で PDF を圧縮する方法を示しています。
// 開いた文書
Document pdfDocument = new Document("Compress.pdf");
// リソースを最適化して PDF ドキュメントを圧縮する
pdfDocument.optimizeResources();
// 出力ドキュメントを保存する
pdfDocument.save("Compressed.pdf");
Javaで画像を縮小してPDFを圧縮する
PDF ファイルには、ドキュメントをスキャンしたときに大量の画像が含まれたり、カタログやその他のビジュアル コンテンツが含まれたりすることがあります。ここでは、埋め込み画像を操作して PDF ドキュメントを圧縮する別の方法を学習します。次の手順では、画像を縮小して PDF ファイルを圧縮する方法を説明します。
- Document クラスを使用してソース PDF ファイルを読み込みます。
- OptimizationOptions クラスのインスタンスを作成します。
- CompressImages オプションと画像の品質を設定します。
- optimizeResources() メソッドを使用して PDF ファイルを圧縮します。
- save() メソッドを使用して、更新された圧縮 PDF ドキュメントを書き込みます。
次のサンプル コードでは、Java で画像を縮小して PDF を圧縮する方法を詳しく説明します。
// 開いた文書
Document pdfDocument = new Document("Compress.pdf");
// 最適化オプションの初期化
com.aspose.pdf.optimization.OptimizationOptions optimizationOptions = new com.aspose.pdf.optimization.OptimizationOptions();
// CompressImages オプションを設定する
optimizationOptions.getImageCompressionOptions().setCompressImages(true);
// 画質オプションを設定する
optimizationOptions.getImageCompressionOptions().setImageQuality(50);
// OptimizationOptions を使用して PDF ドキュメントを圧縮する
pdfDocument.optimizeResources(optimizationOptions);
// 更新された圧縮 PDF ドキュメントを保存する
pdfDocument.save("Compressed.pdf");
JavaでRGBをグレースケールに変換してPDFファイルを圧縮する
次の手順で色空間を RGB からグレースケールに変換することで PDF ファイルを圧縮できます。
- Document クラスを使用して入力 PDF を開きます。
- RgbToDeviceGrayConversionStrategy クラスを使用して、RGB をグレースケール PDF に変換します。
- save() メソッドを使用してグレースケール PDF ファイルをレンダリングします。
次のコード スニペットは、Java で RGB をグレースケールに変換して PDF を圧縮する方法を説明します。
// 開いた文書
Document pdfDocument = new Document("Compress.pdf");
// RGB をグレースケール PDF に変換
com.aspose.pdf.RgbToDeviceGrayConversionStrategy strategy = new com.aspose.pdf.RgbToDeviceGrayConversionStrategy();
for (int idxPage = 1; idxPage <= pdfDocument.getPages().size(); idxPage++) {
com.aspose.pdf.Page page = pdfDocument.getPages().get_Item(idxPage);
strategy.convert(page);
}
// グレースケール PDF ファイルを保存する
pdfDocument.save("Compressed.pdf");
無料の評価ライセンス
無料の一時ライセンス をリクエストして、すべての機能をテストし、制限なしで API を最大限に評価することができます。
まとめ
PDF ファイルの圧縮は、ファイルを効率的に管理するための重要な機能です。この記事では、Java で PDF ドキュメントを圧縮するためのさまざまなアプローチについて説明しました。これらの手法を実装すると、PDF のサイズが小さくなるだけでなく、操作が高速化され、ユーザー エクスペリエンスが向上するように最適化されます。不明な点がある場合は、フォーラム までお気軽にお問い合わせください。