この簡単なトピックでは、** JavaでPDFを圧縮する方法と、使用する必要のあるクラスに関する情報を含む、完全な構成手順と環境設定に関する詳細情報について説明します。 ** Javaコードで簡単なAPI呼び出しを使用して、PDFファイルサイズを縮小し、ディスクまたはメモリストリームに保存できます。圧縮を実現するためにOptimizationOptionsクラスで利用可能なさまざまな圧縮オプションをどのように使用できるかがわかります。
JavaでPDFを圧縮する手順
- MavenリポジトリからAspose.PDF for Javaライブラリ参照を追加してPDFファイルを圧縮します
- PDFを圧縮するには、プロジェクトにAspose.PDF名前空間への参照を含めます
- Document classを作成して、ソースPDFファイルをロードします
- OptimizationOptionsクラスオブジェクトをインスタンス化して、PDFファイルの圧縮を構成し、さまざまなPDF最適化設定を設定します
- optimizeResourcesメソッドを使用してJavaでPDFを圧縮し、PDFをディスクに保存します
上記のJavaの手順例では、定義された手順を順番に採用することでPDFサイズを縮小しています。プロセスは、Mavenリポジトリを使用してAPI参照を追加し、必要な名前空間をインポートすることから始まります。次に、Documentクラスオブジェクトを使用してソースPDFファイルをロードし、圧縮を実行します。 PDFにさまざまな圧縮オプションを設定するために、OptimizationOptions classオブジェクトが使用されます。設定を適用するためにoptimizeResourcesメソッドを呼び出す前に、画像とPDF画質を圧縮するオプションを設定します。最後に、圧縮されたPDFはディスクまたはメモリストリームに保存されます。
JavaでPDFを圧縮するコード
import com.aspose.pdf.Document; | |
import com.aspose.pdf.optimization.OptimizationOptions; | |
import com.aspose.pdf.License; | |
public class CompressPDFFile { | |
public static void main(String[] pdfCompressArgs) throws Exception { | |
// Setting the product license to Compress PDF in Java | |
License lic = new License(); | |
lic.setLicense("Aspose.Total.lic"); | |
// Load source PDF document for compression | |
Document CompressPdfDocument = new Document("Sample.pdf"); | |
// Optimize PDF document.Note that this method cannot guarantee document shrinking and depends | |
// on content of PDF | |
OptimizationOptions PdfoptimizeOptions = new OptimizationOptions(); | |
// Set CompressImages option | |
PdfoptimizeOptions.getImageCompressionOptions().setCompressImages(true); | |
// Set the image quality option | |
PdfoptimizeOptions.getImageCompressionOptions().setImageQuality(50); | |
// Applying set options on PDF resources | |
CompressPdfDocument.optimizeResources(PdfoptimizeOptions); | |
// Save the compressed PDF document | |
CompressPdfDocument.save("CompressPdf.pdf"); | |
} | |
} |
上記のJava圧縮PDFサイズの例では、数行のコードと単純なAPIインターフェースを使用しています。 OptimizationOptionsは、LinkDuplicateStreams、RemovePrivateInfo、RemoveUnusedStreams、MaxResolution、ImageEncoding、RemoveUnusedObjectsなど、それぞれのセッターメソッドを使用してさまざまな圧縮設定を適用できます。ソースPDFに上記の設定を使用して参照できるコンテンツが含まれている場合、上記のプロパティを使用するとPDFの圧縮に寄与することに注意してください。
このトピックでは、* PDFコンプレッサーを開発するために、Javaコード*を簡単なAPI呼び出しを使用して簡単に使用できることを確認しました。 PDFを別々のページに分割することに興味がある場合は、記事JavaでPDFをページごとに分割する方法を参照してください。