如何通过Java应用程序将PDF转为图片格式?

打印 上一主题 下一主题

主题 966|帖子 966|积分 2898

PDF文件和图片文件,这是两种完全不一样的格式,可是有的时候这两种格式却是有相互转换的需要,大家在工作中遇到PDF文件转图片文件的问题时是怎么解决的呢?你们使用的方法简单方便吗?如果很麻烦的话,不妨来了解一下这篇文章分享的方法哦。本文将介绍如何通过Java应用程序快速高效地将PDF转为图片格式。一起来看看吧!

  • 将整个 PDF 文档转换为多个图片
  • 将指定 PDF 页面转换为图片
代码编译环境:
IntelliJ IDEA 2019(jdk 1.8.0)
PDF Jar包:Free Spire.PDF for Java 5.1.0
1.引入jar

导入方法1:
手动引入。将Free Spire.PDF for Java下载到本地,解压,找到lib文件夹下的Spire.PDF.jar文件。在IDEA中打开如下界面,将本地路径中的jar文件引入Java程序:
 导入方法2:如果您想通过 Maven安装,则可以在 pom.xml 文件中添加以下代码导入 JAR 文件。
  1. <repositories>
  2.         <repository>
  3.             <id>com.e-iceblue</id>
  4.             <url>https://repo.e-iceblue.cn/repository/maven-public/</url>
  5.         </repository>
  6.     </repositories>
  7. <dependencies>
  8.     <dependency>
  9.         <groupId>e-iceblue</groupId>
  10.         <artifactId>spire.pdf.free</artifactId>
  11.         <version>5.1.0</version>
  12.     </dependency>
  13. </dependencies>
复制代码
将整个 PDF 文档转换为多个图片

仅需三步即可将整个 PDF 文档转换为多个图片,详细步骤如下:

  • 创建 PdfDocument 类的对象,并通过 PdfDocument.loadFromFile(String filename) 方法加载 PDF 文档。
  • 循环遍历 PDF 每一页,并通过 PdfDocument.saveAsImage(int pageIndex, PdfImageType type, int dpiX, int dpiY) 方法将 PDF 页面保存为图片格式。
  • 指定图片格式为 .png 格式。
完整代码

Java
  1. import com.spire.pdf.*;
  2. import com.spire.pdf.graphics.PdfImageType;
  3. import javax.imageio.ImageIO;
  4. import java.awt.image.BufferedImage;
  5. import java.io.File;
  6. import java.io.IOException;
  7. public class PDFtoImage {
  8.     public static void main(String[] args)throws IOException {
  9.         //实例化PdfDocument类的对象
  10.         PdfDocument pdf = new PdfDocument();
  11.         //加载PDF文档
  12.         pdf.loadFromFile("都江堰.pdf");
  13.         //遍历PDF每一页,保存为图片
  14.         for (int i = 0; i < pdf.getPages().getCount(); i++) {
  15.             //将页面保存为图片,并设置DPI分辨率
  16.             BufferedImage image = pdf.saveAsImage(i, PdfImageType.Bitmap,500,500);
  17.             //将图片保存为png格式
  18.             File file = new File( String.format(("ToImage-img-%d.png"), i));
  19.             ImageIO.write(image, "PNG", file);
  20.         }
  21.         pdf.close();
  22.     }
  23. }
复制代码

将指定 PDF 页面转换为图片

以下是实现格式转换的主要步骤:

  • 创建 PdfDocument 类的实例。
  • 通过 PdfDocument.loadFromFile(String filename) 方法加载 PDF 文档。
  • 调用 PdfDocument.saveAsImage(int pageIndex, PdfImageType type, int dpiX, int dpiY) 方法将 PDF 指定页面保存为图片。
  • 设置图片格式为 .png 格式。
完整代码

Java
  1. import com.spire.pdf.*;
  2. import com.spire.pdf.graphics.PdfImageType;
  3. import javax.imageio.ImageIO;
  4. import java.awt.image.BufferedImage;
  5. import java.io.File;
  6. import java.io.IOException;
  7. public class PDFtoImage {
  8.     public static void main(String[] args) throws IOException {
  9.         //创建PdfDocument类的实例
  10.         PdfDocument pdf = new PdfDocument();
  11.         //加载PDF文档
  12.         pdf.loadFromFile("都江堰.pdf");
  13.         //将PDF第1页保存为图片,并设置图片DPI分辨率
  14.         BufferedImage image= pdf.saveAsImage(0, PdfImageType.Bitmap,500,500);
  15.         //保存为png格式
  16.         ImageIO.write(image, "PNG", new File("ToPNG.png"));
  17.     }
  18. }
复制代码
效果图


—本文完—
 

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

雁过留声

金牌会员
这个人很懒什么都没写!
快速回复 返回顶部 返回列表