pdfbox pdf转图片,图片长宽大小与pdf保持一致
需求
需要将pdf转图片,用作预览,图片需要与pdf页的长宽大小保持一致。
依赖
org.apache.pdfbox:pdfbox:2.0.26
分析过程
pdfbox源码中,设置图片长宽大小的方法如下:
public BufferedImage PDFRenderer.renderImage(int pageIndex, float scale);
我们要分析的是scale
参数设置为多少才能保证图片的长宽大小与pdf一致。
分析源码可以看到,pdf的长宽单位是pt, 图片的长宽单位是px,如下图:
因为pt与px的关系是 pt = px * 0.75
,所以scale = pt / 0.75
,也就是 scale = pt * 1.333333...
示例代码
public static List<File> pdfToImagePath(String filePath, String fileName) {List<File> previewFileList = new ArrayList<>();try {PDDocument doc = PDDocument.load(new File(filePath, fileName));PDFRenderer renderer = new PDFRenderer(doc);int pageCount = doc.getNumberOfPages();for (int i = 0; i < pageCount; i++) {// 1.3333f保持pdf页的长和宽BufferedImage image = renderer.renderImage(i, 1.3333f);File imgFile =new File(filePath + "/" + fileName.substring(0, fileName.indexOf(".")) + "_" + i + ".jpg");ImageIO.write(image, "PNG", imgFile);previewFileList.add(imgFile);}} catch (IOException e) {log.warn("pdf 转图片失败", e);}return previewFileList;}
pdfbox pdf转图片,图片长宽大小与pdf保持一致相关推荐
- java拼接图片大小_Java实现图片拼接(注:图片需长宽一致)
/** * 拼接图片(注:图片需长宽一致) * @param files img1 ,img2 * @param type 1:横向拼接 2:纵向拼接 * @param targetFile 合成新的 ...
- java图像处理002---JAVA图片压缩_图片缩放_图片按照比例缩放_图片指定长宽缩放_Java使用google开源工具Thumbnailator实现图片压缩
JAVA技术交流QQ群:170933152 前言 作为靠谱的java服务端程序员,图片这个事情一直是个头疼的事情. 现在很多网站上,都有上传图片这个功能,而图片对于现在的很多手机来说,拍摄出来的都是高 ...
- java获取图片的长宽尺寸(毫米)
java获取图片的长宽尺寸(毫米) 现在有个需求是附上 附件图片,同时要标注图片的一些属性,比较麻烦的要标识图片的长宽尺寸(毫米),网上找了半天都是获取图片的长宽像素,但是想了想 图片的长宽尺寸不应该 ...
- java实现图片固定长宽的缩放和裁剪
java实现图片固定长宽的缩放和裁剪 实现对aa文件夹进行深层遍历并将图片按长600宽400进行缩放和裁剪 import java.awt.Color; import java.awt.Graphic ...
- 获取网络图片或本地图片的长宽的方法
获取长宽的方法: 1.网络图片 try {BufferedImage image= ImageIO.read(new URL(imgeUrl).openStream());int width = im ...
- php相机图片的长宽比例,照片常用的长宽比介绍,裁剪照片原来还有这么多选择...
在拍摄照片的时候我们往往会在后期进行二次构图,在裁剪的时候有不同的相片长宽比供我们选择,不同的长宽比带给观众的感受也不一样.这里为大家介绍一下照片拍摄中常用到长宽比例. 3:2(6:4) 这张照片是用 ...
- matlab 改变图片的长宽,Matlab怎么调整图片的大小,使它成为特定的长宽
满意答案 whymhm 推荐于 2017.12.15 采纳率:53% 等级:6 已帮助:2557人 一般而言,只需对目标图像进行图形句柄对象和坐标轴句柄对象进行操作即可.MATLAB中分别用gc ...
- 怎么更改图片尺寸?怎么修改图片的长宽尺寸?
在实际应用中,我们常常需要将图片改大小(https://www.yasuotu.com/size),以适应不同的场景和需求,比如在制作海报.PPT等场合,修改图片尺寸后使其更适合展现,下面小编就带大家 ...
- php相机图片的长宽比例,单反相机的 长宽比 创意滤镜 如何使用 什么意思 怎么理解这些内容...
根据拍摄意图改变长宽比 就像使用不同的镜头改变视角可获得不同感觉的照片一样,变更长宽比也能大幅改变照片效果.通过改变长宽比使照片效果大为改观也颇有意思.另外,图像记录画质选择RAW+JPEG的话,可以 ...
最新文章
- CCNA11月14日战报
- [转]MySQL 5.6 my.cnf配置优化
- 最长上升子序列——动态规划
- jeecg 根据数据类型key查询数据字典
- AOP——基于AspectJ的注解来实现AOP操作
- SQL 之后,GQL 成为 ISO/IEC 国际标准数据库语言项目
- WebPack 简明学习教程
- Spring提供的iBatis的SqlMap配置
- DLUTOJ #1394 Magic Questions
- matplotlib画的图保存为emf格式
- 可作为工质状态参数的是_§2工质的热力状态及其基本状态参数
- 交互式应用安全测试(IAST)学习笔记
- html 悬浮qq,js悬浮QQ在线客服代码(支持拖动)
- WinPE (老毛桃最终修改版) V09.11 硬盘安装操作系统详细图解
- 本地部署iOS应用OTA安装 Go + Goland详细实现步骤
- 【雅思】【绿宝书错词本】List13~24
- 在美国OpenSky电商平台上使用MasterCard虚拟信用卡海淘购物攻略教程
- 2022考研捡漏经验贴
- 浏览器开机自启动及全屏配置
- 2022年最新吉林道路运输安全员模拟真题题库及答案