本文实例为大家分享了java实现PDF转图片的具体代码,供大家参考,具体内容如下

1.首先利用maven引入所需jar包

org.apache.pdfbox

fontbox

2.0.1

org.apache.pdfbox

pdfbox

2.0.1

2.这是本人自己写的一个工具类,有两个方法,一个是获取PDF总页码,一个是通过传过来的page把对应的pdf转成指定格式的图片,并通过流的方式响应给客户端

public class PDFToImgUtil {

private static Logger logger = LoggerFactory.getLogger(PDFToImgUtil.class);

/**

* 获取PDF总页数

* @throws IOException

*/

public static int getPDFNum(String fileUrl) throws IOException {

PDDocument pdDocument = null;

int pages = 0;

try {

pdDocument = getPDDocument(fileUrl);

pages = pdDocument.getNumberOfPages();

} catch (Exception e) {

e.printStackTrace();

logger.error(e.getMessage(),e);

} finally {

if (pdDocument != null) {

pdDocument.close();

}

}

return pages;

}

/**

* PDF转图片 根据页码一页一页转

* @throws IOException

* imgType:转换后的图片类型 jpg,png

*/

public static void PDFToImg(OutputStream sos,String fileUrl,int page,String imgType) throws IOException {

PDDocument pdDocument = null;

/* dpi越大转换后越清晰,相对转换速度越慢 */

int dpi = 100;

try {

pdDocument = getPDDocument(fileUrl);

PDFRenderer renderer = new PDFRenderer(pdDocument);

int pages = pdDocument.getNumberOfPages();

if (page <= pages && page > 0) {

BufferedImage image = renderer.renderImageWithDPI(page,dpi);

ImageIO.write(image, imgType, sos);

}

} catch (Exception e) {

e.printStackTrace();

logger.error(e.getMessage(),e);

} finally {

if (pdDocument != null) {

pdDocument.close();

}

}

}

private static PDDocument getPDDocument(String fileUrl) throws IOException {

File file = new File(fileUrl);

FileInputStream inputStream = new FileInputStream(file);

return PDDocument.load(inputStream);

}

}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

时间: 2018-07-23

java 实现pdf 转图片_java实现PDF转图片的方法相关推荐

  1. java修改图章图片_Java处理PDF图章的方法示例(代码)

    本篇文章给大家带来的内容是关于Java 处理PDF图章的方法示例(代码),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助. 图章(印章)是一种在合同.票据.公文等文件中表明法律效应.部门 ...

  2. java pdf添加图片水印图片_Java 在PDF中添加文本水印、图片水印(基于Spire.Cloud.SDK for Java)...

    Spire.Cloud.SDK for Java提供了接口pdfWartermarkApi可用于添加文本水印addTextWartermark()和图片水印addImageWartermark()到P ...

  3. java pdf转图片拼接_java实现pdf按页转换为图片

    本文实例为大家分享了java实现pdf按页转换为图片的具体代码,供大家参考,具体内容如下 本程序是利用jacob.jar包实现的,关于jacob.jar的配置见我上一篇文章,程序中可配置参数选择图片清 ...

  4. java修改图章图片_Java 处理PDF图章(印章)——图片图章、动态图章

    图章(印章)是一种在合同.票据.公文等文件中表明法律效应.部门机关权威的重要指示物,常见于各种格式的文件.文档中.对于纸质文档可以手动盖章,但对于电子文档,则需要通过特定的方法来实现.本篇文档分享通过 ...

  5. java 生成纯色图片_Java 给PDF文档设置背景色(纯色、背景图片)

    import com.spire.pdf.PdfDocument; import com.spire.pdf.PdfPageBase; import java.awt.*; public class ...

  6. Java pdf文件传输_java中pdf文件的管理(pdf文件转png文件,base64传输文件以及删除)...

    org.apache.pdfbox pdfbox 2.0.12 影像文件转为base64编码使用java自带的BASE64Encoder类 代码部分: 前端上传文件的保存: @RequestMappi ...

  7. java 读取pdf签名域_Java给PDF签名

    1.引入依赖 com.e-iceblue e-iceblue http://repo.e-iceblue.cn/repository/maven-public/ e-iceblue spire.pdf ...

  8. java pdf中文乱码_java转pdf(html转为pdf),解决中文乱码,标签不规范等问题

    第一步,下载jar包以及建对应的文件夹.注意pd4ml的jar要选择pro版本.然后建一个pd4fonts.properties 里面对应的字体. SimSun = simsun.ttf 前面为变量名 ...

  9. java代码条形码链接网址_Java在PDF中添加条形码

    java开发从入门到精通第2版疯狂 80.8元 包邮 (需用券) 去购买 > 条形码,是由宽度不等的多个黑条和空白所组成,用以表达一组信息的图形标识符.通过给文档添加条形码,可以直观,快捷地访问 ...

  10. java添加背景图片_Java怎么添加背景图片

    首先,导入相关的包: import java.awt.BorderLayout; import java.awt.Container; import javax.swing.ImageIcon; im ...

最新文章

  1. PHP7Grafika,PHP图片处理库Grafika详细教程(3):图像属性处理
  2. Android中的service全面总结
  3. swift使用cocoapods导入oc三方库
  4. 新春快乐!数据派又双叒叕送福利啦~
  5. 16.04linux 安装微信,Ubuntu 16.04安装微信的过程记录
  6. mysql Got error 28 from storage engine
  7. 【VC++技术杂谈005】如何与程控仪器通过GPIB接口进行通信
  8. jQuery页面滚动图片等元素动态加载实现
  9. php感悟1500,《与美同行》读后感1500字
  10. 哇撒!这几个SpringBoot前后端分离项目(附源码),star过千,快去收藏夹吃灰吧。。。
  11. 201671030113 李星宇 《英文文本统计分析》结对项目报告
  12. 基于javaweb+jsp的运动会体育比赛管理系统(带报告文档)
  13. 4款U盘操作系统推荐
  14. pyodbc 连接oracle
  15. 什么时候你想逃离北上广?
  16. android自定义rx库,Android下载库(OkHttp3+Retrofit2+RxJava2)
  17. 车联网也需要“走对路”,用户需求“导航”小度车载OS持续领先
  18. 点仙人掌(cactus)
  19. 中学生计算机制作大赛,【崇德尚学 和雅金中】热烈祝贺金沙中学在2019年南海区中学生电脑制作活动中硕果累累!...
  20. 抛弃flex执念:利用border-collapse实现顺序展示的快速方法

热门文章

  1. AT070TN92 群创工业液晶屏7寸宽温工控屏
  2. ubuntu 20.04gitlab-runner docker方式安装使用
  3. python 模拟汽车转动
  4. c语言中pinMode的作用,Arduino编程基础与常用函数(详细)解析
  5. 计算机快捷截图方式,Windows系统电脑快速屏幕截图方式
  6. python入门指南txt许半仙百度网盘-《江火欲燃山》《这题超纲了》《Python入门指南》...
  7. H5和原生开发的区别
  8. 《青山翠影》伍 现实的拷问 | 一错又错
  9. 快捷键布线报错_Altium Designer 常用快捷键总结(PCB布线)
  10. MATLAB交通标志识别系统