当前位置: 首页 > news >正文

用org.apache.pdfbox 转换 PDF 到 图片格式

依赖

		<dependency><groupId>org.apache.pdfbox</groupId><artifactId>pdfbox</artifactId><version>2.0.9</version><scope>system</scope><systemPath>${project.basedir}/src/main/resources/libs/pdfbox-2.0.9.jar</systemPath></dependency><dependency><groupId>org.apache.pdfbox</groupId><artifactId>fontbox</artifactId><version>2.0.9</version><scope>system</scope><systemPath>${project.basedir}/src/main/resources/libs/fontbox-2.0.9.jar</systemPath></dependency>

依赖下载地址

https://maven.aliyun.com/mvn/search

代码

import org.apache.pdfbox.pdmodel.PDDocument;
import org.apache.pdfbox.rendering.PDFRenderer;import javax.imageio.ImageIO;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;
import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.Paths;public class Pdf2Img
{public static void main(String[] args) throws IOException{String filePath="D:\\ttttt\\test.pdf";// 加载pdf文件// 2.x版本的pdfbox写法PDDocument doc = PDDocument.load(new File(filePath));PDFRenderer renderer = new PDFRenderer(doc);// 遍历每页pdffor (int i = 0; i < doc.getNumberOfPages(); i++){// dpi调到300左右即可,太小会模糊,太大会使图片变得很大BufferedImage image = renderer.renderImageWithDPI(i, 300);Path path = Paths.get("data_" + i + ".jpg");System.out.println(path.toAbsolutePath());ImageIO.write(image, "jpg", Files.newOutputStream(path));}doc.close();}
}
http://www.xdnf.cn/news/1166239.html

相关文章:

  • EMA《2025-2028年药品监管中的数据与AI 1.3版》信息分析
  • OEC 刷机Armbain 25.05后配置说明
  • 扣子Coze智能体实战:自动化拆解抖音对标账号,输出完整分析报告(喂饭级教程)
  • Java 大视界 -- Java 大数据在智能医疗医疗设备维护与管理中的应用(358)
  • Apache Ignite 中乐观事务(OPTIMISTIC Transactions)的工作机制
  • Rabbit安装
  • 全星FMEA软件系统:FMEA、PC、PFD一体化管理的智能解决方案
  • python中 tqdm ,itertuples 是什么
  • ucharts 搭配uniapp 自定义x轴文字 实现截取显示
  • Vue开发常用
  • 医院信息系统(HIS)切换实施方案与管理技术分析
  • IO复用(多路转接)
  • ob导出租户所有表记录
  • PHP 文件上传
  • Android KTX:让Kotlin开发更简洁高效的利器
  • vue2使用v-viewer实现自动预览
  • ArcGIS地形起伏度计算
  • 假发行业数字化突围,外贸ERP重构外协管理引擎,助力效率飞跃
  • 基于eBPF的Kubernetes网络故障自愈系统设计与实现
  • 开发者的AI认知指南:用大模型重新理解人工智能(上)
  • 【Qt开发】Qt的背景介绍(四)
  • 网络编程---网络基础知识
  • n8n - 为技术团队提供安全的自动化工作流
  • SpringMVC快速入门之启动配置流程
  • 双指针算法介绍及使用(上)
  • 哈希算法(Hash Algorithm)
  • 【bug】 jetson上opencv无法录制h264本地视频
  • Python编程进阶知识之第三课处理数据(numpy)
  • 学习pwn需要的基本汇编语言知识
  • MCP vs 传统集成方案:REST API、GraphQL、gRPC的终极对比