文章目录

  • 一、环境准备
  • 二、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转图片相关推荐

  1. java+icepdf+下载,Java中使用icepdf轻松把pdf转换为图片

    Java中使用icepdf轻松把pdf转换为图片 icepdf简介: icepdf是java的一个专门处理pdf的外置的扩展包,使用它可以方便的把pdf转换为图片,当然它的功能不止如此,大家如果想要深 ...

  2. java工具类 PDF转图片

    依赖的maven包 <dependency><groupId>org.icepdf</groupId><artifactId>icepdf-core&l ...

  3. java pdfbox 转jpg_java实现PDF转图片的方法

    本文实例为大家分享了java实现PDF转图片的具体代码,供大家参考,具体内容如下 1.首先利用maven引入所需jar包 org.apache.pdfbox fontbox 2.0.1 org.apa ...

  4. 如何使用在线工具将PDF转换为图片

    PDF是一种非常方便的文件格式,它可以在不同的设备和操作系统之间保持格式不变,并且非常易于共享.然而,在某些情况下,您可能需要将PDF文件转换为图片格式.这可能是因为您想在网页上展示这些文件或是需要在 ...

  5. xpdf工具(PDF转图片工具)

    xpdf安装配置 下载: 根据系统选择下载 https://www.xpdfreader.com/download.html 下载xpdf和中文字体,分别解压缩. windows下使用: 建立xpdf ...

  6. pdfbox或icepdf转换PDF为图片时,中文乱码(出现方框)处理

    1.不需要在Linux上安装字体就能实现中文的转换 2.转换的字体可以自己去下载(百度) 3.我这个是将原先的PDF编辑表单域,动态填充模板后转换成PNG. 4.上代码............... ...

  7. java pdfreader去除水印_(最新)JAVA使用Icepdf 5.0.6 pro的PDF转图片去掉水印的方法...

    最近发现PDF转图片各种开源工具PDFBOX.PDFRenderer.jpedal都不好用,中文各种蛋疼,但是试用了一下Icepdf相当强大,唯一不足就是生成的图片带有官方水印,下面介绍一下去掉官方水 ...

  8. Java制作PDF转图片小工具

    背景: 前几日一位朋友突然找我帮忙将PDF转换成图片,我仗义相助,建议他使用福昕阅读器,然而他说转换需要VIP会员,老贵了.我花了半天时间寻找免费会员,结果不出所料没有找到,我一怒之下,便决定亲自动手 ...

  9. java pdfbox 合并PDF、PDF转图片、PDF插入图片

    1.添加依赖 <dependency><groupId>org.apache.pdfbox</groupId><artifactId>pdfbox< ...

  10. Java读写pdf、pdf转图片工具类

    本工具类所用到的相关jar包及版本有:     1.pdfbox-1.5.0.jar     2.fontbox-1.5.0.jar     3.jempbox-1.5.0.jar     4.iTe ...

最新文章

  1. Day 20: 斯坦福CoreNLP —— 用Java给Twitter进行情感分析
  2. iOS html5使用缓存并及时更新方案总结
  3. php循环输出标题,php-如何通过循环在同一标题下分组数据
  4. 使用OpenCV,Keras和Tensorflow构建Covid19掩模检测器
  5. CF526G Spiders Evil Plan(树上最优性问题、倍增+线段树)
  6. 2013年11月19日
  7. docker 仓库镜像 替换_自己动手创建 Docker 镜像并分享到镜像仓库,容器引擎的用途越来越广泛!...
  8. Make Fcitx Work In Sublime-Text-3
  9. while循环 字符串格式化 运算符 编码初识
  10. [海隆软件][方正电机]IPO,打新股中
  11. 第一回合:.net与 C#基本概念
  12. 如何在camera 驱动中配置HDR的曝光模块
  13. C盘满了,要怎么清理才不会误删?
  14. iol植入手术过程_有晶体眼IOL植入技术
  15. 利用matlab函数生成运动模糊图像,运动模糊图像,模糊图像,锐化图像
  16. 计算机审计体会论文,审计论文格式_计算机审计实验报告_审计论文范文3000字
  17. hive 大数据 除重问题研究
  18. 打印机 “错误-正在打印”
  19. 淘东电商项目(47) -商品搜索服务功能的实现(集成拼音分词器)
  20. h5网页服务器,h5网页游戏服务器搭建

热门文章

  1. 亲手养成一只自己的动漫主播!单张头像生成动画,可指定姿态或真人视频迁移...
  2. Mysql 索引存放位置
  3. WaveDrom 时序图编辑器
  4. DDR核心频率、工作频率,等效频率详解
  5. 什么是全国大学生电子设计大赛?如何备战?
  6. 小米、搜狗、TW等机器学习算法工程师面试总结
  7. 【算法工程师】成为一名优秀的机器学习算法工程师所需知识及资料汇总-附思维导图
  8. word流程图怎么使箭头对齐_在Word中画流程图时箭头怎么对齐到框的中间啊?
  9. android全面屏像素密度,屏幕像素密度超400ppi,让你感受视觉的极限
  10. 系统可靠性分析与设计