/*** 图片转pdf(A4大小,图片等比缩放[可能会导致模糊],居中展示)* @param outPdfFilepath 生成pdf文件路径* @param imgFiles 需要转换的图片File类Array,按array的顺序合成图片*/public static void imgsToPdfA4(String outPdfFilepath, File[] imgFiles) throws Exception {PDDocument document = new PDDocument();logger.info(">>>>>>>>>>>>>> 图片合成PDF <<<<<<<<<<<<<< ");for (File imgFile : imgFiles) {String imgName = imgFile.getName().toLowerCase();if (imgName.endsWith(".bmp")|| imgName.endsWith(".jpg")|| imgName.endsWith(".jpeg")|| imgName.endsWith(".gif")|| imgName.endsWith(".png")){InputStream in = new FileInputStream(imgFile);BufferedImage bimg = ImageIO.read(in);int width = bimg.getWidth();int height = bimg.getHeight();PDPage page = new PDPage(PDRectangle.A4);document.addPage(page);PDImageXObject pdImage = PDImageXObject.createFromFileByExtension(imgFile, document);float scale = 1f;float s1 = PDRectangle.A4.getWidth() / width;float s2 = PDRectangle.A4.getHeight() / height;float resWidth = width;float resHeight = height;if(s1 < 1 || s2 < 1) {if (s1 > s2){scale = s2;} else {scale = s1;}resHeight = height * scale;resWidth = width * scale;}float x = (PDRectangle.A4.getWidth() - resWidth)/2;float y = (PDRectangle.A4.getHeight() - resHeight)/2;logger.info("添加图片 {} 原图 w:{} h:{}, scale w:{} h:{}",imgFile.getPath(),width,height,resWidth,resHeight);PDPageContentStream contentStream = new PDPageContentStream(document, page);contentStream.drawImage(pdImage, x, y, resWidth,resHeight);contentStream.close();}else{logger.info("不支持该文件[略过],{}",imgFile.getPath());}}document.save(outPdfFilepath);document.close();logger.info(">>>>>>>>>>>>>> 图片合成PDF完成 <<<<<<<<<<<<<<");}
        <dependency><groupId>org.apache.pdfbox</groupId><artifactId>pdfbox</artifactId><version>2.0.15</version></dependency>

java - PdfBox 图片转pdf相关推荐

  1. JAVA PdfBox库提取PDF文件某一页转为图片

    Apache PDFBox 库是一个开源.用于操作 PDF 文档的 Java 工具库.PDFBox 允许创建新的 PDF 文档.操作现有文档,以及从文档中提取内容. 获取 Apache PDFBox ...

  2. Java实现图片转PDF

    1.导入依赖 <!-- https://mvnrepository.com/artifact/com.itextpdf/itextpdf -->         <dependenc ...

  3. java Itextpdf 图片转pdf并压缩下载至浏览器

    注:图片存放在服务器D盘指定目录下,该目录URL存放于数据库表中 maven项目 jdk1.7 <!-- itextpdf --> <dependency><groupI ...

  4. java读取图片、PDF中图片上的文字

    读取图片上的文字 提示:本文是基于tess4j 文章目录 读取图片上的文字 前言 一.tess4j是什么? 二.使用步骤 1.POM引入库 2.实例代码 总结 前言 总是有一些与众不同的需求在等着研发 ...

  5. Java实现图片转换PDF文件

    文章目录 引入依赖 前端页面 控制层接口 PDF工具类 页面效果 最近因为一些事情,需要将一张简单的图片转换为PDF的文件格式,在网上找了一些工具,但是这些工具不是需要注册账号,就是需要下载软件. 而 ...

  6. Java为图片、PDF等文档添加自定义文字水印,亲测好用

    随着大数据时代的来临,数据安全逐渐被提上日程,今天我给大家分享的是Java中图片添加自定义水印.PDF.Word等文档添加自定义水印. 我这边不废话,直接上代码,粘贴到你的项目即可使用,若是缺少依赖引 ...

  7. java 给图片、pdf、docx、doc、wps、xlsx、xls添加水印(均测试通过)

    java 添加水印(均亲自测试通过) 前言 本地开发环境:jdk1.8 涉及jar: 1)图片:jdk自带的rt.jar 2)pdf:itextpdf-5.5.9.jar.itext-asian.ja ...

  8. java实现图片转pdf文件

    2021年新年快乐!在此祝大家代码无bug~~~ 由于我是驻场开发,前段时间问我要个证件扫描件的PDF文件,我一想,现在转换pdf文件是要花钱的啊,这是我能忍受的了的吗!!! 答案当然是不能啊,我的贫 ...

  9. java将图片写入pdf

    需要的jar: itext-2.1.7.jar public static void main(String[] args) {image2pdf(imgPath, pdfPath);}/**** @ ...

最新文章

  1. 我的世界java8_《我的世界》java8 64服务器mod
  2. 加密解密基础问题:字节数组和(16进制)字符串的相互转换
  3. 302 found是什么意思_犯罪大师心中的恶魔答案是什么 心中的恶魔答案真相分析...
  4. vnc 字体设置_Xterm字体大小的设置
  5. axios 使用步骤很简单,首先在前端项目中,引入 axios:
  6. ASP.NET 2.0 中Cookies的Expires属性详解
  7. HTML表单input里面的value的作用
  8. 掘金小册8折优惠:掌握这些技术,轻松拿offer
  9. 2021年PMP考试模拟题6(含答案解析)
  10. 开集识别(Open Set Recognition)
  11. 2021-11-07-防火墙添加安全策略
  12. [IDEA-PLUGIN] IDEA Translation插件中有道智云(有道翻译)
  13. 验证整数和小数的正则表达式
  14. iso8583协议说明
  15. Odoo免费开源信息化平台满足所有企业应用场景与需求
  16. OSPF的三张表(邻居表、LSDB表、路由表)、LSA、LSDB、SPF与路由表之间的关联、OSPF建立的8种必要条件
  17. 国外开源IoT平台Thingsboard社区版本(V3.3.2)在Win10环境下进行源码编译及运行指南
  18. Windows7或Windows10创建基于L2TP IPSEC客户端教程
  19. 计算机系统动态库修复,一键修复!动态库文件 mfc100u.dll 修复使用说明
  20. linux I2c设备注册

热门文章

  1. conda清除无用安装包
  2. php 常用开源,常用PHP开源系统
  3. ngrok一款内网穿透+记录HTTP请求的神器(支持HTTPS)
  4. 【原创】三菱QD77MS16控制伺服电机的方法
  5. java工程师简历自我介绍范文,薪资翻倍
  6. Java Font 居中 反锯齿效果
  7. 数据结构与算法——算法
  8. 算法分析之N皇后问题
  9. R语言——多重共线性处理
  10. 利用频率采取法设计50HZ陷波器(matlab代码)