PDF ドキュメントを JPEG や PNG などの画像形式に変換することは、さまざまな理由で便利です。例えば、ソーシャルメディアでコンテンツを共有しやすくしたり、ウェブサイトに埋め込んだり、プレゼンテーションに含めたりすることができます。PDF を画像に変換することによって、PDF 形式を十分にサポートしていないプリンターによる印刷の問題も回避できます。この記事では、Spire.PDF for Java を使用して Java で PDF を JPEG や PNG に変換する方法を説明します。
Spire.PDF for Java をインストールします
まず、Spire. PDF for Java を Java プロジェクトに追加する必要があります。JAR ファイルは、このリンクからダウンロードできます。Maven を使用する場合は、次のコードをプロジェクトの pom.xml ファイルに追加する必要があります。
<repositories>
<repository>
<id>com.e-iceblue</id>
<name>e-iceblue</name>
<url> https://repo.e-iceblue.com/nexus/content/groups/public/</url>
</repository>
</repositories>
<dependencies>
<dependency>
<groupId>e-iceblue</groupId>
<artifactId>spire.pdf</artifactId>
<version>9.12.0</version>
</dependency>
</dependencies>
Java で PDF を JPEG に変換する
Spire.PDF for Java が提供する PdfDocument.saveAsImage() メソッドを使用すると、PDF ドキュメントの特定のページを BufferedImage オブジェクトに変換し、それを .jpg または .png 形式のファイルとして保存することができます。以下に、PDF ドキュメントの各ページを JPEG イメージファイルに変換する手順を示します。
- PdfDocument オブジェクトを作成します。
- PdfDocument.loadFromFile() メソッドを使用して PDF ファイルを読み込みます。
- PDF ドキュメントの各ページを反復処理します。
- PdfDocument.saveAsImage() メソッドを使用して、特定のページを BufferedImage オブジェクトに変換します。
- 変換されたイメージと同じ幅と高さを持つ RGB タイプの新しい BufferedImage を作成します。
- ImageIO.write() メソッドを使用して、イメージデータを .jpg ファイルとして書き込みます。
- Java
import com.spire.pdf.PdfDocument;
import com.spire.pdf.graphics.PdfImageType;
import javax.imageio.ImageIO;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;
public class ConvertPdfToJpeg {
public static void main(String[] args) throws IOException {
// PdfDocumentのインスタンスを作成します
PdfDocument pdf = new PdfDocument();
// サンプルのPDFドキュメントを読み込みます
pdf.loadFromFile("サンプル.pdf");
// ページをループします
for (int i = 0; i < pdf.getPages().getCount(); i++) {
// 現在のページをバッファイメージとして保存します
BufferedImage image = pdf.saveAsImage(i, PdfImageType.Bitmap, 300, 300);
// RGBタイプのバッファイメージを再作成します
BufferedImage newImg = new BufferedImage(image.getWidth(), image.getHeight(), BufferedImage.TYPE_INT_RGB);
newImg.getGraphics().drawImage(image, 0, 0, null);
// 画像データを.jpgファイルとして書き込みます
File file = new File("output/Images/" + String.format(("JPEG-%d.jpg"), i));
ImageIO.write(newImg, "JPEG", file);
}
pdf.close();
}
}
Java で PDF を PNG に変換する
Spire.PDF for Java を使用して PDF を PNG に変換する手順は次の通りです。
- PdfDocument オブジェクトを作成します。
- PdfDocument.loadFromFile() メソッドを使用して PDF ファイルを読み込みます。
- PDF ドキュメントの各ページを反復処理します。
- PdfDocument.saveAsImage() メソッドを使用して、特定のページを BufferedImage オブジェクトに変換します。
- ImageIO.write() メソッドを使用して、イメージデータを .png ファイルとして書き込みます。
- Java
import com.spire.pdf.*;
import javax.imageio.ImageIO;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;
public class ConvertPdfToPng {
public static void main(String[] args) throws IOException {
// PdfDocumentのオブジェクトを作成します
PdfDocument doc = new PdfDocument();
// サンプルのPDFドキュメントを読み込みます
doc.loadFromFile("サンプル.pdf");
// 生成されるPNGファイルの背景を透明にします
// doc.getConvertOptions().setPdfToImageOptions(0);
// ページをループします
for (int i = 0; i < doc.getPages().getCount(); i++) {
// 現在のページをバッファイメージとして保存します
BufferedImage image = doc.saveAsImage(i);
// 画像データを.pngファイルとして書き込みます
File file = new File("output/Images/" + String.format("PNG-%d.png", i));
ImageIO.write(image, "PNG", file);
}
doc.close();
}
}
PDF ドキュメントの背景が白で、PNG に変換するときにそれを透明にしたい場合は、各ページを BufferedImage オブジェクトに保存する前に、以下のコード行を追加することができます。
- Java
doc.getConvertOptions().setPdfToImageOptions(0);
一時ライセンスを申請する
結果ドキュメントから評価メッセージを削除したい場合、または機能制限を取り除く場合は、についてこのメールアドレスはスパムボットから保護されています。閲覧するにはJavaScriptを有効にする必要があります。にお問い合わせ、30 日間有効な一時ライセンスを取得してください。