java将pdf转换为jpg图片格式
2022/1/27 17:06:20
本文主要是介绍java将pdf转换为jpg图片格式,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
引入依赖
<dependency> <groupId>org.apache.pdfbox</groupId> <artifactId>fontbox</artifactId> <version>2.0.1</version> </dependency> <dependency> <groupId>org.apache.pdfbox</groupId> <artifactId>pdfbox</artifactId> <version>2.0.1</version> </dependency>
代码实现
import org.apache.pdfbox.pdmodel.PDDocument; import org.apache.pdfbox.pdmodel.PDPageTree; import org.apache.pdfbox.rendering.PDFRenderer; import javax.imageio.ImageIO; import java.awt.image.BufferedImage; import java.io.*; public class Pdf { public static void main(String[] args) throws Exception { pdfToImageFile(); } static void pdfToImageFile() throws Exception { PDDocument doc = null; ByteArrayOutputStream os = null; InputStream stream = null; OutputStream out = null; try { // pdf路径 stream = new FileInputStream("D:\\download\\pdf.pdf"); // 加载解析PDF文件 doc = PDDocument.load(stream); PDFRenderer pdfRenderer = new PDFRenderer(doc); PDPageTree pages = doc.getPages(); int pageCount = pages.getCount(); for (int i = 0; i < pageCount; i++) { BufferedImage bim = pdfRenderer.renderImageWithDPI(i, 200); os = new ByteArrayOutputStream(); ImageIO.write(bim, "jpg", os); byte[] dataList = os.toByteArray(); // jpg文件转出路径 File file = new File("D:\\download\\pdf\\hello_" + i + ".jpg"); if (!file.getParentFile().exists()) { // 不存在则创建父目录及子文件 file.getParentFile().mkdirs(); file.createNewFile(); } out = new FileOutputStream(file); out.write(dataList); } } catch (Exception e) { e.printStackTrace(); throw e; } finally { if (doc != null) doc.close(); if (os != null) os.close(); if (stream != null) stream.close(); if (out != null) out.close(); } } }
成功截图
这篇关于java将pdf转换为jpg图片格式的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-07-02springboot项目无法注册到nacos-icode9专业技术文章分享
- 2024-06-26结对编程到底难不难?答案在这里
- 2024-06-19《2023版Java工程师》课程升级公告
- 2024-06-15matplotlib作图不显示3D图,怎么办?
- 2024-06-1503-Loki 日志监控
- 2024-06-1504-让LLM理解知识 -Prompt
- 2024-06-05做软件测试需要懂代码吗?
- 2024-06-0514-ShardingSphere的分布式主键实现
- 2024-06-03为什么以及如何要进行架构设计权衡?
- 2024-05-31全网首发第二弹!软考2024年5月《软件设计师》真题+解析+答案!(11-20题)