首先pom引入依赖
<dependency>
<groupId>org.apache.pdfbox</groupId>
<artifactId>fontbox</artifactId>
<version>2.0.9</version>
</dependency>
<dependency>
<groupId>org.apache.pdfbox</groupId>
<artifactId>pdfbox</artifactId>
<version>2.0.9</version>
</dependency>
<dependency>
<groupId>commons-logging</groupId>
<artifactId>commons-logging</artifactId>
<version>1.2</version>
</dependency>
代码内容参数 fileAddress是pdf地址,type是图片后缀名比如“jpg”
public static void pdf2png(String fileAddress, String type) {
File file = new File(fileAddress);
try {
PDDocument doc = PDDocument.load(file);
PDFRenderer renderer = new PDFRenderer(doc);
int pageCount = doc.getNumberOfPages();
for (int i = 0; i < pageCount; i++) {
BufferedImage image = renderer.renderImageWithDPI(i, 144);
//如果已经有此图片则不再转换
File fi = new File(fileAddress+"_"+(i+1)+"."+type);
if (!fi.exists()){
//pdf转换成图片
ImageIO.write(image, type, new File(fileAddress+"_"+(i+1)+"."+type));
}
}
} catch (IOException e) {
e.printStackTrace();
}
}