如何使用Itextsharp将PDF转换为图像
在当今日益数字化的世界中,便携式文档格式 (PDF) 已成为共享和保存数字文档的普遍文件格式。 然而,在某些情况下,将 PDF 转换为图像是必要的,为用户解锁了无数可能性。 将 PDF 转换为图像格式提供了一种多功能的解决方案,使文档能无缝集成到演示文稿、网页或社交媒体平台中。 在这个视觉交流的时代,将 PDF 转换为图像的能力提供了增强的可访问性,并为创造力和便利性开辟了新的途径。 本文探讨了使用 Java 将 PDF 转换为图像的重要性以及实现此任务的工具。
为此,我们将使用并比较以下两个 Java PDF 库:
- iTextSharp (iText7)
- IronPDF
如何使用 iTextSharp 将 PDF 文件转换为图像
- 要使用 iTextSharp(iText7) 将 PDF 文件转换为图像,首先设置环境。
- 使用
renderPdf对象加载现有 PDF 文件。 - 使用
PdfRenderImageType方法在 PDF 文件上设置渲染属性。 - 使用
PdfToImageRenderer实例化 PDF 文档的转换。 - 使用
OUTPUT_DIRECTORY将图像保存到指定路径。
1. IronPDF for Java
IronPDF for Java 为在 Java 编程生态系统中实现强大的 PDF 操作和生成功能敞开了大门。 随着企业和开发人员寻求以编程方式处理与 PDF 相关任务的高效解决方案,IronPDF 作为一个可靠且功能丰富的库脱颖而出。 无论是将 HTML 内容转换为 PDF,合并、拆分还是编辑现有 PDF 文档,IronPDF 为 Java 开发人员提供了一套强大的工具来简化工作流程。 凭借其简单的集成和广泛的文档,这个库能够让 Java 应用程序与 PDF 无缝交互,为所有与 PDF 相关的需求提供全面的解决方案。 在本文中,我们将探索 IronPDF for Java 的关键特性和优势,并说明它如何简化 Java 应用程序中的 PDF 处理过程。
2. Java 的 iTextSharp (iText7)
Java 的 iTextSharp (iText7),一个功能强大且多用途的 PDF 库,使开发人员能够以编程方式创建、修改和操作 PDF 文档。 iTextSharp(iText7) 最初为 .NET 开发,现已适用于 Java,提供了在 Java 生态系统中处理所有与 PDF 相关任务的无缝和高效解决方案。 借助其广泛的功能和易于使用的 API,iText7 使 Java 开发人员能够轻松生成动态 PDF、添加内容、插入图像,以及从现有 PDF 中提取数据。 无论是创建发票、生成报告,还是将 PDF 处理集成到企业应用程序中,iText7 都是一个有价值的工具,让开发人员能够完全控制其 PDF 处理需求。 本文中,我们将探索 Java 的 iTextSharp (iText7) 的基本特性和优势,并通过实际示例展示其功能。
3. 安装 IronPDF for Java 库
要将 IronPDF 及其所需的日志依赖项 SLF4J 集成到您的 Maven 项目中,请按照以下步骤操作:
- 打开项目的 pom.xml 文件。
- 导航到依赖项部分。 如果尚不存在,请创建一个。
包含以下 IronPDF 和 SLF4J 的依赖项条目:
<dependency> <groupId>com.ironsoftware</groupId> <artifactId>com.ironsoftware</artifactId> <version>2023.7.2</version> </dependency> <dependency> <groupId>org.slf4j</groupId> <artifactId>slf4j-simple</artifactId> <version>2.0.3</version> </dependency><dependency> <groupId>com.ironsoftware</groupId> <artifactId>com.ironsoftware</artifactId> <version>2023.7.2</version> </dependency> <dependency> <groupId>org.slf4j</groupId> <artifactId>slf4j-simple</artifactId> <version>2.0.3</version> </dependency>XML- 保存 pom.xml 文件。

就是这样! 只需按上方显示的按钮即可将这些依赖项包括在您的项目中。
4. 安装 iText7 Java 库
要安装 iText7,请按照下列步骤添加依赖项:
- 打开 pom.xml 文件。
找到依赖项标签。 如果它们不存在,请创建它们并将以下代码放在这些标签之间:
<!-- https://mvnrepository.com/artifact/com.itextpdf/itext7-core --> <dependency> <groupId>com.itextpdf</groupId> <artifactId>itext7-core</artifactId> <version>8.0.0</version> <type>pom</type> </dependency><!-- https://mvnrepository.com/artifact/com.itextpdf/itext7-core --> <dependency> <groupId>com.itextpdf</groupId> <artifactId>itext7-core</artifactId> <version>8.0.0</version> <type>pom</type> </dependency>XML- 单击屏幕右上角的小按钮。
就这样,您的依赖项已安装。
5. 使用 IronPDF 将 PDF 文档转换为图像
使用 IronPDF 从 PDF 页面中提取图像比您想象的要简单,只需几行代码。 IronPDF 提供了对多种图像文件类型的兼容性,如 JPEG 和 PNG。
在本节中,我们将通过示例代码来了解如何使用 IronPDF for Java 将 PDF 文件转换为图像。
import com.ironsoftware.ironpdf.PdfDocument;
import javax.imageio.ImageIO;
import java.awt.image.BufferedImage;
import java.nio.file.Paths;
import java.util.List;
import java.io.File;
public class Main {
public static void main(String[] args) throws Exception {
// Load the PDF document
PdfDocument pdf = PdfDocument.fromFile(Paths.get("composite.pdf"));
// Extract all images from the PDF document into a list
List<BufferedImage> images = pdf.extractAllImages();
int i = 1; // Image counter
// Traverse the extracted images list and save each image
for (BufferedImage extractedImage : images) {
String fileName = "assets/extracted_" + i++ + ".png";
ImageIO.write(extractedImage, "PNG", new File(fileName)); // Save image as PNG
}
}
}import com.ironsoftware.ironpdf.PdfDocument;
import javax.imageio.ImageIO;
import java.awt.image.BufferedImage;
import java.nio.file.Paths;
import java.util.List;
import java.io.File;
public class Main {
public static void main(String[] args) throws Exception {
// Load the PDF document
PdfDocument pdf = PdfDocument.fromFile(Paths.get("composite.pdf"));
// Extract all images from the PDF document into a list
List<BufferedImage> images = pdf.extractAllImages();
int i = 1; // Image counter
// Traverse the extracted images list and save each image
for (BufferedImage extractedImage : images) {
String fileName = "assets/extracted_" + i++ + ".png";
ImageIO.write(extractedImage, "PNG", new File(fileName)); // Save image as PNG
}
}
}上述代码首先使用 PdfDocument.fromFile() 方法打开 PDF 文件,该方法将文件路径作为参数。 然后它使用 extractAllImages() 方法从 PDF 文档中提取所有图像,并将它们保存到一个名为 images 的列表中。 然后,它遍历这些图像并使用 ImageIO.write() 方法保存每个图像,该方法将图像、文件类型("PNG")和路径+名称作为参数。
输出目录截图

6. 使用 iText7 将 PDF 文件转换为图像
在本节中,我们将看到如何使用 iText7 Java PDF 库从 PDF 中提取图像。 以下是 IText7 PDF 到图像提取的示例代码。
import com.itextpdf.pdfrender.PdfRenderImageType;
import com.itextpdf.pdfrender.PdfToImageRenderer;
import com.itextpdf.pdfrender.RenderingProperties;
import java.io.File;
import java.io.IOException;
public class PdfRender_Demo {
private static final String ORIG = "/uploads/input.pdf";
private static final String OUTPUT_DIRECTORY = "/myfiles/";
public static void main(String[] args) throws IOException {
// Set rendering properties for the PDF to image conversion
final RenderingProperties properties = new RenderingProperties();
properties.setImageType(PdfRenderImageType.JPEG); // Set image type to JPEG
properties.setScaling(1.0f); // Maintain original size
// Perform rendering from PDF to Image format
PdfToImageRenderer.renderPdf(
new File(ORIG),
new File(OUTPUT_DIRECTORY),
"/customfilename-%d",
properties
);
}
}import com.itextpdf.pdfrender.PdfRenderImageType;
import com.itextpdf.pdfrender.PdfToImageRenderer;
import com.itextpdf.pdfrender.RenderingProperties;
import java.io.File;
import java.io.IOException;
public class PdfRender_Demo {
private static final String ORIG = "/uploads/input.pdf";
private static final String OUTPUT_DIRECTORY = "/myfiles/";
public static void main(String[] args) throws IOException {
// Set rendering properties for the PDF to image conversion
final RenderingProperties properties = new RenderingProperties();
properties.setImageType(PdfRenderImageType.JPEG); // Set image type to JPEG
properties.setScaling(1.0f); // Maintain original size
// Perform rendering from PDF to Image format
PdfToImageRenderer.renderPdf(
new File(ORIG),
new File(OUTPUT_DIRECTORY),
"/customfilename-%d",
properties
);
}
}使用 iText7 时,观察到 iText7 速度较慢,不能轻松处理大文件。
输出

7. 结论
在当今数字化世界中,将 PDF 转换为图像的能力提供了多种可能性,可以无缝集成文档到演示文稿、网页或社交媒体平台,增强了可访问性和创造力。 Java 的 iTextSharp (iText7) 和 IronPDF for Java 为此任务提供了有价值的解决方案。
iTextSharp 为开发人员提供了一个功能强大且多用途的 PDF 库,使得以编程方式创建、修改和操作 PDF 文档成为可能。 然而,它可能在处理大文件和处理速度较慢时面临挑战。
相比之下,Java 的 IronPDF 页面 提供了一个功能丰富且高效的库,为开发人员提供处理与 PDF 相关任务的工具,包括提取图像、合并、拆分和编辑 PDF 文档。 IronPDF for PDF to Image Conversion 在这个比较中显然胜出。
要了解有关使用 Java 从 PDF 中提取图像的完整教程,请访问以下 有关使用 IronPDF for Java 提取图像的综合指南。 完整比较可在此处获得 PDF 到图像库的完整比较。
iText7 定价信息 起价为每 PDF 0.15 美元。 至于 IronPDF,它提供了一个从 $liteLicense 开始的一次性购买的终身许可证,还提供了一个IronPDF 的免费试用许可证。 欲了解更多信息,请访问IronPDF 许可证信息。
常见问题解答
为什么将 PDF 转换为图像很重要?
将 PDF 转换为图像很重要,因为它允许在演示文稿、网页和社交媒体平台中进行多样的文档集成,从而增强在视觉传达中的可访问性和创造力。
使用特定 Java 库进行 PDF 操作有什么好处?
IronPDF for Java 提供强大的 PDF 操作功能,包括将 HTML 转换为 PDF、合并、分割和编辑文档。它功能丰富,易于集成,并提供广泛的文档支持。
一个 Java PDF 库与另一个有什么不同?
iTextSharp (iText7) 提供了一个强大的库,用于以编程方式创建和操作 PDF,但可能在处理大文件和较慢的处理速度上有所欠缺。相比之下,IronPDF 高效,并提供全面的工具来完成与 PDF 相关的任务。
使用特定 PDF 库将 PDF 转换为图像的步骤有哪些?
使用 IronPDF 将 PDF 转换为图像时,加载 PDF 文档,指定所需的图像格式(例如 JPEG 或 PNG),并使用 IronPDF 提供的图像转换方法保存输出图像。
如何安装用于 PDF 操作的 Java 库?
要安装 IronPDF,请将 IronPDF 和 SLF4J 依赖项添加到 Maven 项目的 pom.xml 文件中,并保存该文件以集成库。
使用特定 PDF 库提取图像的过程是什么?
使用 IronPDF,加载 PDF 文档,使用 extractAllImages 方法将图像提取到列表,并使用 ImageIO.write 保存每个图像。
使用特定 Java 库进行 PDF 操作的好处是什么?
iTextSharp (iText7) 功能多样,允许开发者以编程方式创建、修改和操作 PDF 文档。适用于生成动态 PDF、添加内容和提取数据。
是否提到 Java PDF 库的任何定价细节?
iText7 的定价从每 PDF $0.15 开始。IronPDF 提供终身许可证开始于 $liteLicense,并提供免费试用许可证。
使用特定 PDF 库将 PDF 文件转换为图像的步骤是什么?
使用 IronPDF 将 PDF 转换为图像时,初始化文档,选择输出图像格式,并处理 PDF 页面以生成可以保存到所需位置的图像。
在哪里可以找到使用特定 Java 库提取图像的综合指南?
使用 IronPDF for Java 提取图像的综合指南可在 IronPDF 网站上找到,提供详细的说明和示例代码。
转化大 PDF 文件为图像的过程中如何处理?
IronPDF 通过利用优化的内存管理和转换算法有效地处理大 PDF 文件,确保快速可靠的 PDF 到图像转换。
使用 PDF 库可以将 PDF 页面转换为哪些格式?
IronPDF 支持将 PDF 页面转换为各种图像格式,如 JPEG 和 PNG,提供基于特定项目需求的灵活性。






