PDF到Java中的图像转换

PDF到Java中的图像转换

PDFPNGJPEG 是用于数据存储和表示的广泛使用和著名的文件格式。这三个人都有自己的长处和短处。 PDF 基于矢量文件,而 PNG 和 JPEG 是光栅图像文件。在这篇博文中,我们将深入学习如何以编程方式在 Java 中实现 PDF 到图像的转换。为此,我们将通过在 Java 应用程序中安装一个简单的 Java 库 将 PDF 转换为 PNG 和 PDF 转换为 JPEG。

本博文将介绍以下几点:

Java 中的 PDF 到图像转换 - API 安装

我们将使用企业级 Java 库将 PDF 文件转换为图像。该库提供了广泛的文件格式转换和文件操作功能。因此,要启用此库,您可以下载 jar 文件 或遵循以下 maven 配置。

存储库

<repository>
    <id>AsposeJavaAPI</id>
    <name>Aspose Java API</name>
    <url>https://repository.aspose.com/repo/</url>
</repository>

依赖

<dependency>
    <groupId>com.aspose</groupId>
    <artifactId>aspose-pdf</artifactId>
    <version>20.12</version>
    <classifier>jdk17</classifier>
</dependency>

使用 Java 库将 PDF 转换为 PNG

在本节中,我们将使用 Java 应用程序中的几行源代码将 PDF 文件转换为 PNG 图像格式。此外,我们可以根据需要配置 API 调用。

我们将执行以下步骤以编程方式将 PDF 转换为 PNG:

  1. 初始化 Document 类的对象并加载 PDF 文件。
  2. 使用 getPages() 遍历 PDF 页面的所有页面,并创建一个流对象来保存输出图像。
  3. 创建一个 Resolution 对象并设置一个值。
  4. 创建一个具有定义分辨率的 PngDevice 对象。
  5. 调用 process 方法将 PDF 转换为 PNG 并将图像保存到流中。
  6. 调用 close() 方法关闭流。

现在,将以下代码片段复制并粘贴到您的 Java 文件中:

        // 使用空 PDF 文件初始化文档类 
        Document pdfDocument = new Document("INPUT-PDF-FILE");

        // 使用 Document.getPages() 遍历 pdf 文档的所有页面   
        for (int count = 1; count <= pdfDocument.getPages().size(); count++) {
            // 创建流对象以保存输出图像
            java.io.OutputStream imgStream = new java.io.FileOutputStream("PATH-FOR-OUTPUT-FILE/converted_png" + count + ".png");
            // 创建具有值的分辨率对象
            Resolution resolution = new Resolution(300);
            // 创建具有定义分辨率的 PngDevice 对象  
            PngDevice pngDevice = new PngDevice(resolution);
            // 调用 process 方法将 pdf 转换为 PNG 并将图像保存到流 
            pngDevice.process(pdfDocument.getPages().get_Item(count), imgStream);
            // 调用此方法关闭流®
            imgStream.close();
        }

如何以编程方式将 PDF 转换为 JPEG

按照以下步骤将 PDF 文件转换为另一种著名的图像格式 JPEG:

  1. 创建 Document 类的对象并加载 PDF 文件。
  2. 使用 getPages() 遍历 PDF 页面的所有页面,并创建一个流对象来保存输出图像。
  3. 创建一个 Resolution 类的对象并设置一个值。
  4. 创建具有定义分辨率的 JpegDevice 对象。
  5. 调用 process 方法将 PDF 转换为 JPEG 并将图像保存到流中。
  6. 调用 close() 方法关闭流

复制并粘贴以下代码片段,以编程方式在 Java 中将 PDF 转换为 JPEG:

        // 创建 Document 类的对象并加载 PDF 文件。
        Document pdfDocument = new Document("INPUT-PDF-FILE");

        // 使用 getPages() 遍历 PDF 页面的所有页面并创建流对象以保存输出图像。
        for (int count = 1; count <= pdfDocument.getPages().size(); count++) {
            // 创建流对象以保存输出图像
            java.io.OutputStream imgStream = new java.io.FileOutputStream("./PATH-FOR-OUTPUT-FILE/converted_jpeg" + count + ".jpeg");
            // 创建一个分辨率类的对象并设置一个值。
            Resolution resolution = new Resolution(300);
            // 使用定义的分辨率创建 JpegDevice 对象。
            JpegDevice jpegDevice = new JpegDevice(resolution,100);
            // 调用 process 方法将 PDF 转换为 JPEG 并将图像保存到流中。
            jpegDevice.process(pdfDocument.getPages().get_Item(count), imgStream);
            // 调用 close() 方法关闭流
            imgStream.close();
        }

获得免费许可证

请使用 免费临时许可证 试用 API,不受评估限制。

加起来

这篇博文到此结束。我们已经学习了如何在 Java 中实现 PDF 到图像的转换。此外,我们还演示了如何在 Java 应用程序中以编程方式将 PDF 转换为 PNG 和 PDF 转换为 JPEG。此外,您可以通过深入研究 文档 自己探索其他功能。最后,conholdate.com 一直在撰写新的博客文章。因此,请保持联系以获取最新更新。

问一个问题

您可以在我们的 论坛 上分享您的问题或疑问。

也可以看看