Convert PDF files to images with Apache PDFBox?
Apache PDFBox is open source Java library for working with PDF files. This library allows processing on PDF files in many ways. I am using this for converting PDF files to images. I used its version 2.
Following is code for PDF to image conversion. This code is converting pdf pages to images and save them to another directory.
import java.awt.image.BufferedImage; import java.io.IOException; import java.io.File; import org.apache.pdfbox.pdmodel.PDDocument; import org.apache.pdfbox.rendering.ImageType; import org.apache.pdfbox.rendering.PDFRenderer; import org.apache.pdfbox.tools.imageio.ImageIOUtil; public class PdfToImage { public static void main(String[] args) throws IOException { String pdfFilename = "resources/pdfs/file-name.pdf"; String imagesDir = "resources/pdfImg/images/"; PDDocument document = PDDocument.load(new File(pdfFilename)); PDFRenderer pdfRenderer = new PDFRenderer(document); File destinationFile = new File(imagesDir); for (int page = 0; page < document.getNumberOfPages(); ++page) { BufferedImage bim = pdfRenderer.renderImageWithDPI(page, 300, ImageType.RGB); ImageIOUtil.writeImage(bim, destinationFile + "-" + (page+1) + ".png", 300); } document.close(); } }
Change pdfFilename and imagesDir variable values as per your requirements.