java实现PDF转图片的方法
本文实例为大家分享了java实现PDF转图片的具体代码,供大家参考,具体内容如下
1.首先利用maven引入所需jar包
org.apache.pdfbox fontbox 2.0.1 org.apache.pdfbox pdfbox 2.0.1
2.这是本人自己写的一个工具类,有两个方法,一个是获取PDF总页码,一个是通过传过来的page把对应的pdf转成指定格式的图片,并通过流的方式响应给客户端
publicclassPDFToImgUtil{ privatestaticLoggerlogger=LoggerFactory.getLogger(PDFToImgUtil.class); /** *获取PDF总页数 *@throwsIOException */ publicstaticintgetPDFNum(StringfileUrl)throwsIOException{ PDDocumentpdDocument=null; intpages=0; try{ pdDocument=getPDDocument(fileUrl); pages=pdDocument.getNumberOfPages(); }catch(Exceptione){ e.printStackTrace(); logger.error(e.getMessage(),e); }finally{ if(pdDocument!=null){ pdDocument.close(); } } returnpages; } /** *PDF转图片根据页码一页一页转 *@throwsIOException *imgType:转换后的图片类型jpg,png */ publicstaticvoidPDFToImg(OutputStreamsos,StringfileUrl,intpage,StringimgType)throwsIOException{ PDDocumentpdDocument=null; /*dpi越大转换后越清晰,相对转换速度越慢*/ intdpi=100; try{ pdDocument=getPDDocument(fileUrl); PDFRendererrenderer=newPDFRenderer(pdDocument); intpages=pdDocument.getNumberOfPages(); if(page<=pages&&page>0){ BufferedImageimage=renderer.renderImageWithDPI(page,dpi); ImageIO.write(image,imgType,sos); } }catch(Exceptione){ e.printStackTrace(); logger.error(e.getMessage(),e); }finally{ if(pdDocument!=null){ pdDocument.close(); } } } privatestaticPDDocumentgetPDDocument(StringfileUrl)throwsIOException{ Filefile=newFile(fileUrl); FileInputStreaminputStream=newFileInputStream(file); returnPDDocument.load(inputStream); } }
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持毛票票。
声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:czq8825#qq.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。