«

Java如何实现将PDF转为图片格式

时间:2024-7-26 08:53     作者:韩俊     分类: Java


本文小编为大家详细介绍“Java如何实现将PDF转为图片格式”,内容详细,步骤清晰,细节处理妥当,希望这篇“Java如何实现将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 文件。

<repositories>

        <repository>

            <id>com.e-iceblue</id>

            <url>https://repo.e-iceblue.cn/repository/maven-public/</url>

        </repository>

    </repositories>

<dependencies>

    <dependency>

        <groupId>e-iceblue</groupId>

        <artifactId>spire.pdf.free</artifactId>

        <version>5.1.0</version>

    </dependency>

</dependencies>

将整个 PDF 文档转换为多个图片

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

    创建 PdfDocument 类的对象,并通过 PdfDocument.loadFromFile(String filename) 方法加载 PDF 文档。

    循环遍历 PDF 每一页,并通过 PdfDocument.saveAsImage(int pageIndex, PdfImageType type, int dpiX, int dpiY) 方法将 PDF 页面保存为图片格式。

    指定图片格式为 .png 格式。

完整代码

import com.spire.pdf.*;
import com.spire.pdf.graphics.PdfImageType;

import javax.imageio.ImageIO;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;

public class PDFtoImage {
    public static void main(String[] args)throws IOException {
        //实例化PdfDocument类的对象
        PdfDocument pdf = new PdfDocument();

        //加载PDF文档
        pdf.loadFromFile("都江堰.pdf");

        //遍历PDF每一页,保存为图片
        for (int i = 0; i < pdf.getPages().getCount(); i++) {
            //将页面保存为图片,并设置DPI分辨率
            BufferedImage image = pdf.saveAsImage(i, PdfImageType.Bitmap,500,500);
            //将图片保存为png格式
            File file = new File( String.format(("ToImage-img-%d.png"), i));
            ImageIO.write(image, "PNG", file);
        }
        pdf.close();
    }
}

效果图

将指定 PDF 页面转换为图片

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

    创建 PdfDocument 类的实例。

    通过 PdfDocument.loadFromFile(String filename) 方法加载 PDF 文档。

    调用 PdfDocument.saveAsImage(int pageIndex, PdfImageType type, int dpiX, int dpiY) 方法将 PDF 指定页面保存为图片。

    设置图片格式为 .png 格式。

完整代码

import com.spire.pdf.*;
import com.spire.pdf.graphics.PdfImageType;

import javax.imageio.ImageIO;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;

public class PDFtoImage {
    public static void main(String[] args) throws IOException {
        //创建PdfDocument类的实例
        PdfDocument pdf = new PdfDocument();

        //加载PDF文档
        pdf.loadFromFile("都江堰.pdf");

        //将PDF第1页保存为图片,并设置图片DPI分辨率
        BufferedImage image= pdf.saveAsImage(0, PdfImageType.Bitmap,500,500);

        //保存为png格式
        ImageIO.write(image, "PNG", new File("ToPNG.png"));
    }
}

效果图

标签: java

热门推荐