pdfbox、icepdf工具实现pdf转图片
文章目录
- 一、环境准备
- 二、pdfbox、icepdf工具实现pdf转图片
- 结尾
一、环境准备
- icepdf-core-6.1.2.jar
- pdfbox-2.0.20.jar
二、pdfbox、icepdf工具实现pdf转图片
import java.awt.image.BufferedImage;
import java.awt.image.RenderedImage;
import java.io.File;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;
import javax.imageio.ImageIO;
import org.apache.pdfbox.pdmodel.PDDocument;
import org.apache.pdfbox.pdmodel.PDPage;
import org.icepdf.core.pobjects.Document;
import org.icepdf.core.pobjects.Page;
import org.icepdf.core.util.GraphicsRenderingHints;/*** pdf转图片工具类*/
public class PdfToImgUtils {/*** 利用pdfbox实现pdf转图片* @param filePath* @return*/public static List<String> convertToImgByPdfbox(String filePath){// Properties properties = System.getProperties();
// Object encoding = properties.get("file.encoding");
// properties.put("file.encoding", "SHIFT-JIS");List<String> result = new ArrayList<String>();String targetFormat = "jpg";String targetPath;int resolution = 300;File file = new File(filePath);PDDocument doc = null;try {doc = PDDocument.load(file);if (doc.isEncrypted()) {// doc.decrypt("TU2016");return result;}List<PDPage> pages = doc.getDocumentCatalog().getAllPages();String format = "_%0" + String.valueOf(pages.size()).length() + "d";for (int i = 0; i < pages.size(); i++) {PDPage page = pages.get(i);BufferedImage image = page.convertToImage(BufferedImage.TYPE_BYTE_GRAY, resolution);targetPath = filePath.substring(0, filePath.lastIndexOf(".")) + String.format(format, i + 1) + "." + targetFormat;File destFile = new File(targetPath);ImageIO.write(image, targetFormat, destFile);result.add(targetPath);}} catch (Exception e) {e.printStackTrace();} finally {if (doc != null) {try {doc.close();} catch (IOException e) {e.printStackTrace();}}//properties.put("file.encoding", encoding);}return result;}/*** 利用icepdf实现pdf转图片* @param filePath* @return*/public static List<String> convertToImgByIcepdf(String filePath) {List<String> result = new ArrayList<String>();Document document = null;//缩放比例float scale = 2f;//旋转角度float rotation = 0f;String targetFormat = "png";String targetPath;try {document = new Document();document.setFile(filePath);String format = "_%0" + String.valueOf(document.getNumberOfPages()).length() + "d";for (int i = 0; i < document.getNumberOfPages(); i++) {BufferedImage image = (BufferedImage)document.getPageImage(i, GraphicsRenderingHints.SCREEN, Page.BOUNDARY_CROPBOX, rotation, scale);RenderedImage rendImage = image;targetPath = filePath.substring(0, filePath.lastIndexOf(".")) + String.format(format, i + 1) + "." + targetFormat;File file = new File(targetPath);ImageIO.write(rendImage, targetFormat, file);result.add(targetPath);image.flush();}} catch (Exception e) {e.printStackTrace();} finally {document.dispose();}return result;}public static void main(String args[]) throws Exception {Long start = System.currentTimeMillis();PdfToImgUtils.convertToImgByIcepdf("C:\\Users\\Administrator\\Desktop\\ocr\\111.pdf");System.out.println((System.currentTimeMillis() - start) / 1000);}
}
结尾
- 感谢大家的耐心阅读,如有建议请私信或评论留言。
- 如有收获,劳烦支持,关注、点赞、评论、收藏均可,博主会经常更新博客,知识共享。
pdfbox、icepdf工具实现pdf转图片相关推荐
- java+icepdf+下载,Java中使用icepdf轻松把pdf转换为图片
Java中使用icepdf轻松把pdf转换为图片 icepdf简介: icepdf是java的一个专门处理pdf的外置的扩展包,使用它可以方便的把pdf转换为图片,当然它的功能不止如此,大家如果想要深 ...
- java工具类 PDF转图片
依赖的maven包 <dependency><groupId>org.icepdf</groupId><artifactId>icepdf-core&l ...
- java pdfbox 转jpg_java实现PDF转图片的方法
本文实例为大家分享了java实现PDF转图片的具体代码,供大家参考,具体内容如下 1.首先利用maven引入所需jar包 org.apache.pdfbox fontbox 2.0.1 org.apa ...
- 如何使用在线工具将PDF转换为图片
PDF是一种非常方便的文件格式,它可以在不同的设备和操作系统之间保持格式不变,并且非常易于共享.然而,在某些情况下,您可能需要将PDF文件转换为图片格式.这可能是因为您想在网页上展示这些文件或是需要在 ...
- xpdf工具(PDF转图片工具)
xpdf安装配置 下载: 根据系统选择下载 https://www.xpdfreader.com/download.html 下载xpdf和中文字体,分别解压缩. windows下使用: 建立xpdf ...
- pdfbox或icepdf转换PDF为图片时,中文乱码(出现方框)处理
1.不需要在Linux上安装字体就能实现中文的转换 2.转换的字体可以自己去下载(百度) 3.我这个是将原先的PDF编辑表单域,动态填充模板后转换成PNG. 4.上代码............... ...
- java pdfreader去除水印_(最新)JAVA使用Icepdf 5.0.6 pro的PDF转图片去掉水印的方法...
最近发现PDF转图片各种开源工具PDFBOX.PDFRenderer.jpedal都不好用,中文各种蛋疼,但是试用了一下Icepdf相当强大,唯一不足就是生成的图片带有官方水印,下面介绍一下去掉官方水 ...
- Java制作PDF转图片小工具
背景: 前几日一位朋友突然找我帮忙将PDF转换成图片,我仗义相助,建议他使用福昕阅读器,然而他说转换需要VIP会员,老贵了.我花了半天时间寻找免费会员,结果不出所料没有找到,我一怒之下,便决定亲自动手 ...
- java pdfbox 合并PDF、PDF转图片、PDF插入图片
1.添加依赖 <dependency><groupId>org.apache.pdfbox</groupId><artifactId>pdfbox< ...
- Java读写pdf、pdf转图片工具类
本工具类所用到的相关jar包及版本有: 1.pdfbox-1.5.0.jar 2.fontbox-1.5.0.jar 3.jempbox-1.5.0.jar 4.iTe ...
最新文章
- Day 20: 斯坦福CoreNLP —— 用Java给Twitter进行情感分析
- iOS html5使用缓存并及时更新方案总结
- php循环输出标题,php-如何通过循环在同一标题下分组数据
- 使用OpenCV,Keras和Tensorflow构建Covid19掩模检测器
- CF526G Spiders Evil Plan(树上最优性问题、倍增+线段树)
- 2013年11月19日
- docker 仓库镜像 替换_自己动手创建 Docker 镜像并分享到镜像仓库,容器引擎的用途越来越广泛!...
- Make Fcitx Work In Sublime-Text-3
- while循环 字符串格式化 运算符 编码初识
- [海隆软件][方正电机]IPO,打新股中
- 第一回合:.net与 C#基本概念
- 如何在camera 驱动中配置HDR的曝光模块
- C盘满了,要怎么清理才不会误删?
- iol植入手术过程_有晶体眼IOL植入技术
- 利用matlab函数生成运动模糊图像,运动模糊图像,模糊图像,锐化图像
- 计算机审计体会论文,审计论文格式_计算机审计实验报告_审计论文范文3000字
- hive 大数据 除重问题研究
- 打印机 “错误-正在打印”
- 淘东电商项目(47) -商品搜索服务功能的实现(集成拼音分词器)
- h5网页服务器,h5网页游戏服务器搭建