使用icepdf进行pdf转成图片的功能,
主要代码如下,(因为前台传入的是一个文件流,所以和网上直接用pdf地址传入略有差异)
Document document = null;
float rotation = 0f;
document = new Document();
document.setInputStream(file.getInputStream(), path);
BufferedImage img=(BufferedImage) document.getPageImage(0, GraphicsRenderingHints.SCREEN, Page.BOUNDARY_CROPBOX, rotation,2.0f);
RenderedImage rendImage = img;
String imgName = file.getName() + "pdf.png";
outFile = new File(File.separator + imgName);
ImageIO.write(rendImage, "png", outFile);
img.flush();
document.dispose();
在windons上测试的时候pdf转成图片时没有问题的,但是项目部署到云上(linux)以后,就出现了空指针异常(有的pdf好用,可以正常转换,有的pdf报空指针异常),查看日志说是 document.getPageImage(0, GraphicsRenderingHints.SCREEN, Page.BOUNDARY_CROPBOX, rotation,2.0f);这个地方报的空指针异常,调试了好几天,后来发现是版本问题,换个最新的版本就没问题了