Java PDF转换成图片并输出给前台展示
首先需要导入所需工具类
<dependency>
<groupId>org.apache.pdfbox</groupId>
<artifactId>fontbox</artifactId>
<version>2.0.1</version>
</dependency>
<dependency>
<groupId>org.apache.pdfbox</groupId>
<artifactId>pdfbox</artifactId>
<version>2.0.1</version>
</dependency><dependency>
<groupId>cn.hutool</groupId>
<artifactId>hutool-all</artifactId>
<version>4.1.19</version>
</dependency>
1. PDF转图片的方法
for那里看看是几张图片。 几页。根据页数进行转
/***
* PDF文件转PNG图片,全部页数
*
* @param PdfFilePath pdf完整路径
* @param dpi dpi越大转换后越清晰,相对转换速度越慢
* @return
*/
public static String pdf2Image(String PdfFilePath, String dstImgFolder, int dpi) {File file = new File(PdfFilePath);
PDDocument pdDocument;
try {String imgPDFPath = file.getParent();
int dot = file.getName().lastIndexOf('.');
String imagePDFName = file.getName().substring(0, dot); // 获取图片文件名
String imgFolderPath = dstImgFolder;pdDocument = PDDocument.load(file);
PDFRenderer renderer = new PDFRenderer(pdDocument);
/* dpi越大转换后越清晰,相对转换速度越慢 */
StringBuffer imgFilePath = null;
for (int i = 1; i < 2; i++) {String imgFilePathPrefix = imgFolderPath + File.separator + imagePDFName;
imgFilePath = new StringBuffer();
imgFilePath.append(imgFilePathPrefix);
imgFilePath.append(".png");
File dstFile = new File(imgFilePath.toString());
BufferedImage image = renderer.renderImageWithDPI(i, dpi);
ImageIO.write(image, "png", dstFile);
}
System.out.println("PDF文档转PNG图片成功!");
return imgFilePath.toString();
} catch (IOException e) {e.printStackTrace();
return null;
}
}
2. 调用这个方法 生成BASE64数据
String s = wpath + BRCA + "-" + CTNND1_15951 + "-KMplot.pdf";
//转换返回图片地址
String s1 = pdf2Image(s, wpath, 300);
File file = new File(s1);
//把图片转换为BASE64数据
FileInputStream inputFile = new FileInputStream(file);
byte[] buffer = new byte[(int) file.length()];
inputFile.read(buffer);
inputFile.close();
String ss = new BASE64Encoder().encode(buffer);
3. 使用ajax的方式将图片数据取回。直接设置如IMG标签中
img就是取回的数据
<img id="ImagePic" src="https://img-blog.csdnimg.cn/2022010619340091204.png'+img+'" alt="Base64 encoded image" style="width:600px;" />
完整的ajax代码
var index = layer.load();
$.ajax({type:"post",
dataType:"json",
contentType:'application/json;charset=UTF-8',
url:"getTnImg",
data:JSON.stringify(data),
success:function(resp){layer.close(index);
var img = resp.img;
var html = '<img id="ImagePic" src="https://img-blog.csdnimg.cn/2022010619340091204.png'+img+'" alt="Base64 encoded image" style="width:600px;" />';
layer.open({type: 1,
skin: 'layui-layer-rim', //加上边框
area: ['50%', '90%'], //宽高
content: html
});
},error:function(XMLHttpRequest,textStatus,errorThrown) {console.log(XMLHttpRequest.status);
console.log(XMLHttpRequest.statusText);
}
});
Java PDF转换成图片并输出给前台展示相关推荐
- java pdf输出图片_Java PDF转换成图片并输出给前台展示
首先需要导入所需工具类 org.apache.pdfbox fontbox 2.0.1 org.apache.pdfbox pdfbox 2.0.1 cn.hutool hutool-all 4.1. ...
- PDF转换成图片(Java pdfbox实现 附中文乱码解决方案)
PDF转换成图片(Java pdfbox实现) pdf转成图片在java中主流的做法就是pdfbox和icepdf 然而我选择pdfbox 废话不多说上代码 引入依赖 <!--pdfbox--& ...
- 纯java pdf转换成html,java pdf转换html代码
java pdf转换html代码 [2021-02-03 00:56:42] 简介: php去除nbsp的方法:首先创建一个PHP代码示例文件:然后通过"preg_replace(&quo ...
- android开发将h5转换成pdf_如何将PDF转换成图片?搞定PDF格式转换,就用这招就够了!...
原标题:如何将PDF转换成图片?搞定PDF格式转换,就用这招就够了! 在我们日常学习和日常工作中,我们有时候会遇到要使用到PDF中某一部分的情况,这时候我们可以将PDF文件转成图片.有什么办法可以把P ...
- 怎么把pdf转换成图片?这个方法你值得拥有
想要高效率的工作,除了需要大家合理安排时间之外,一些能够辅助高效工作的工具也是必不可少的.就拿要把一份pdf文件转换成若干图片来说,如果不知道方法,找不到合适的转换工具,那么想要完成这一任务,势必要花 ...
- 几个方法,教你PDF转换成图片怎么做?
在科技日益发展的今天,电子文档成了许多人的首选,因为电子文件保存时间比纸质文件长.而PDF格式的文件因为其较高的安全性和便捷性更是受到更多的青睐.但是当学生党或者一些建筑设计师等与艺术相关的人在想要使 ...
- 怎么把pdf转换成图片?
相信很多人都使用pdf文件,为了工作的方便,我们可以把pdf转换成图片来使用,也可以把图片转换成pdf来使用,同样可以将pdf跟其他文件相互转换着来使用.如果要想快速轻松的转换,那么就要在电脑上面下载 ...
- C#技术分享【PDF转换成图片——13种方案】
1.[O2S.Components.PDFRender4NET.dll],第三方DLL,可以实现PDF转图片,支持32位系统.64位系统 官方试用版的dll左上角会有一排红色水印,下面这个是破解版的没 ...
- 怎么把PDF转换成图片?这几种转换方法都可以做到
怎么把PDF文件转换成图片呢?大家在使用PDF文件的时候,很多情况下不仅是用来发送文件,还会用来阅读文件,如果只需要浏览文件中某部分内容的话,远没有图片使用的方便,我们可以将这部分内容转换成图片来更加 ...
- pdf转换成jpg python_【PDF转图片】如何将PDF转换成图片格式--Python
可能会有人问,很多PDF阅读软件都是可以直接将PDF文件保存成图片格式的,为什么非得用Python?? 使用Python(代码)的优势就在于可以批量操作,试想,如果你有成百上千的PDF文件,你很有可能 ...
最新文章
- 与15级新加入团队同学的约定
- 数据库学习day_03:关联关系/ 关联查询/ JDBC
- 浅谈PVID和VID区别
- python怎么输入两个数然后求差值_python两个日期之间天差值获取
- php7 cms,PHP7CMS 无条件前台GETSHELL
- Python|520表白神器
- windows 搜索文件
- c语言基础符号,C语言符号大全。陆续更新基础知识给新人提供。(申精)
- Spring异步任务处理,@Async的配置和使用
- 自动驾驶各大传感器介绍-硬件篇
- 设计模式(三) 抽象工厂模式
- java short 转char_byte,short,char的类型转换
- 专科计算机教育的现状,探析高职计算机专业英语教学现状
- 服务器连接不上的处理方式
- 按键精灵制作自用游戏脚本所需的简单操作
- Dining (匹配,最大流)
- 用数组来实现一个循环队列
- 解决this application failed to start
- python集合增加元素_python集合的新增元素方法整理
- 搭建easy-mock数据模拟服务器