fbpx
< 戻る
印刷

PDFからBufferedImageへの変換

PDFをBufferedImageに変換する簡単な例

JPedalは、PDFファイルやPDFファイルのディレクトリからJava BufferedImagesへの簡単な変換を提供します。これはJPedal ConvertPagesToImagesクラスを使用します。

コード例 – ファイルパスを使ってPDFファイルを画像に変換

 
				
					ConvertPagesToImages convert = new ConvertPagesToImages("/path/to/file.pdf");
//convert.setPassword("password"); //パスワードが必要な場合
try {
    if (convert.openPDFFile()) {
        int pageCount = convert.getPageCount();
        for (int page = 1; page <= pageCount; page++) {
            BufferedImage image = convert.getPageAsImage(page);
        }
    }
} catch (Exception e) {
    e.printStackTrace();
}
convert.closePDFfile(); 
				
			

コード例 – メモリ内のPDFファイルを変換

				
					// メモリ使用量を減らすため、ファイルへのキャッシュをすべて無効にします。
PdfFileReader.alwaysCacheInMemory = -1;
// bytes は、PDF ファイルデータを持つ byte[] です。
ConvertPagesToImages convert = new ConvertPagesToImages(bytes);
// convert.setPassword("password"); // パスワードが必要な場合
try {
    if (convert.openPDFFile()) {
        int pageCount = convert.getPageCount();
        for (int page = 1; page <= pageCount; page++) {
            BufferedImage image = convert.getPageAsImage(page);
        }
    }
} catch (PdfException e) {
    e.printStackTrace();
}
convert.closePDFfile();

				
			

PDFをBufferdImageに変換するカスタマイズ可能な例

この例では、アップスケーリングやConvertPagesToHiResImagesクラスには多くの追加オプションがあります。

コード例

				
					ConvertPagesToHiResImages convert = new ConvertPagesToHiResImages("/path/to/file.pdf");
//convert.setPassword("password");
//convert.setPageScaling(1.33f); //100%でAcrobatと同じサイズを提供します。
HashMap options = new HashMap(); //参照 https://javadoc.idrsolutions.com/org/jpedal/constants/JPedalSettings.html
try {
    if (convert.openPDFFile()) {
        int pageCount = convert.getPageCount();
        for (int page = 1; page <= pageCount; page++) {
            BufferedImage image = convert.getPageAsHiResImage(page, isBackgroundTransparent, options);
        }
    }
} catch (Exception e) {
    e.printStackTrace();
}
convert.closePDFfile();

				
			
    MENU
    PAGE TOP