如何在 Node.js 中将 PDF 转换为图像文件

How to Convert a PDF to an Image File

This article was translated from English: Does it need improvement?
Translated
View the article in English

要将PDF文件转换为图像,请使用IronPDF的NodeJS模块提供的rasterizeToImageFiles方法。 您可以配置此方法以支持各种PDF到图像的转换操作。 将PDF转换为JPEG、PNG和其他图像格式。 将每个PDF页面转换为JPEG或PNG图像,或者仅转换少数页面。 IronPDF为您提供了完全的控制。

继续阅读以了解如何使用IronPDF for Node.js进行PDF到图像的任务!

使用NPM安装IronPDF

npm install @ironsoftware/ironpdf
npm install @ironsoftware/ironpdf
SHELL

从NPM安装IronPDF的Node.js模块,将PDF转换为PNG、JPG(或JPEG)、GIF和其他图像类型。

转换PDF为图像格式

假设我们正在处理一个包含占位符文本的单页样本PDF文档

如何将PDF转换为图像文件,图1 显示我们的样本PDF文件在PDF查看器中的图像。 从Learning Container下载此PDF文件和其他文件用于测试目的。

下面的源代码将PDF文件转换为PNG文件。

import { PdfDocument } from "@ironsoftware/ironpdf";

// Convert PDF File to a PNG File
// The operation is performed asynchronously with promises
PdfDocument.fromFile("./sample-pdf-file.pdf").then((pdf) => {
    pdf.rasterizeToImageFiles("./images/sample-pdf-file.png");
    return pdf;
});

我们使用PdfDocument.fromFile方法将我们的样本文档加载到Node库中。 This function gives a PdfDocument class in IronPDF representing our sample file. Since the object we need is contained in a Promise, we attach a callback function to run when the promise resolves the PdfDocument.

在回调中,我们在解析后的对象上调用IronPDF中的rasterizeToImageFiles函数,将单页文档转换为图像。 如上所示,我们指定新的图像的目标路径(包括文件名和文件扩展名)作为参数。

如何将PDF转换为图像文件,图2 这张图片是从上面的源代码中生成的。 IronPDF在仅用三行代码的情况下将我们的样本PDF转换为PNG文件!

Learning Container提供样本PDF文件,您可以用于您的项目中的测试目的。 您可以免费下载本例中使用的样本PDF文件(以及类似的样本文件)。欢迎尝试在其他具有不同大小和复杂性的PDF上使用上面的示例。

下一节提供了额外值得考虑的PDF到图像转换细节。

高级图像转换选项

将PDF转换为JPEG

默认情况下,rasterizeToImageFiles按照目标路径中指定的文件类型转换文档。

因此,要将我们在前面的示例中使用的样本PDF转换为JPG文件(而不是将PDF转换为PNG),我们只需更改目标路径中使用的文件名扩展名:

// Convert PDF to JPG (not to PNG)
pdf.rasterizeToImageFiles("./images/pdf-to-jpeg.jpg");

另一种方法是指定IronPDF中的ImageType选项ImageType值优先于目标路径中声明的图像文件类型。 这强制rasterizeToImageFiles在转换时不考虑文件名。

您可以在下一个示例中看到此操作。 在此,我们在对rasterizeToImageFiles的调用中包含一个声明ImageType的JSON选项参数。

import { PdfDocument, ImageType } from "@ironsoftware/ironpdf";

// Convert PDF to JPEG Format using ImageType.JPG
const options = {
   type: ImageType.JPG
};
PdfDocument.fromFile("./sample-pdf-file.pdf").then((pdf) => {
    pdf.rasterizeToImageFiles("./images/pdf-to-jpeg.png", options);
    return pdf;
});

运行上面的程序也创建了一个JPG图像,就像我们之前的示例一样。 然而请注意,目标文件名仍然使用PNG文件扩展名。 rasterizeToImageFiles忽略了路径中使用的.PNG文件名扩展名,而是遵循ImageType.JPG类型值。

您可以改编此示例,将PDF转换为其他图像类型,包括GIF格式和位图格式。

提示:在不易或不希望更改文件名以特定类型的情况下,使用此方法特别有用。

转换具有多个页面的PDF文件

要将包含多个页面的文档转换为所需的图像类型(PNG,JPG,位图等),我们可以像以前一样使用rasterizeToImageFiles方法。 调用时,该方法将以指定类型将每个页面创建为单独的图像。

如何将PDF转换为图像,图3 一个两页的样本PDF文档。

下一段样本代码从上面显示的两页PDF文件示例中生成两个PNG文件。

import { PdfDocument } from "@ironsoftware/ironpdf";

// Convert PDF with two pages to a set of images.
PdfDocument.fromFile("./multipage-pdf.pdf").then((pdf) => {
    pdf.rasterizeToImageFiles("./images/multipage-pdf/multipage-pdf-page.png");
});

如何将PDF转换为图像,图4 使用rasterizeToImageFiles方法的两页PDF文件结果。该方法为原文件的每页创建一个图像。

转化特定PDF页面为图像

声明一个带有fromPages属性设置的JSON对象允许我们将来自多页文档的一页或多页栅格化(而不是所有页)。

下面的代码示例仅将这个大样本文件的第1、4、6和9页转换为位图。

import { PdfDocument, ImageType } from "@ironsoftware/ironpdf";

// Convert PDF containing many pages to BMP images.
const options = {
    type: ImageType.BMP,
    fromPages: [0, 3, 5, 8]  // Select only the desired pages
};
PdfDocument.fromFile("./sample-pdf-with-images.pdf").then((pdf) => {
    pdf.rasterizeToImageFiles("./images/multipage-selective-pdf/multipage-pdf-page.bmp", options);
});

如何将PDF转换为图像,图5 IronPDF仅对我们在options参数中指定的页面执行PDF到图像操作。

开始使用 IronPDF

进一步阅读

API参考

阅读PdfDocument类的API文档及其rasterizeToImageFiles方法,以获取更多关于如何调整方法以满足您的需求的见解。

代码示例

常见问题解答

如何使用Node.js将PDF转换为图像文件?

您可以使用IronPDF的`rasterizeToImageFiles`方法在Node.js中将PDF转换为图像文件。首先,使用npm install @ironsoftware/ironpdf安装IronPDF包。然后,使用PdfDocument.fromFile加载您的PDF文档,并调用rasterizeToImageFiles将其转换为您所需的图像格式,如PNG或JPG。

在Node.js项目中安装IronPDF的步骤是什么?

要在Node.js项目中安装IronPDF,请使用npm包管理器,并运行命令npm install @ironsoftware/ironpdf。这将把IronPDF添加到您的项目依赖中,方便您使用其PDF转换功能。

我可以将PDF文件转换为多种图像格式吗?

可以,使用IronPDF您可以将PDF文件转换为多种图像格式,如PNG、JPG、GIF和位图。您可以在rasterizeToImageFiles方法中使用ImageType选项指定所需的格式。

是否可以仅将PDF的某些页面转换为图像?

可以,IronPDF允许您将PDF的特定页面转换为图像。您可以使用包含fromPages属性的JSON对象指定要转换的页面,指示页面索引。

如何将多页PDF转换为单独的图像文件?

您可以通过调用rasterizeToImageFiles方法使用IronPDF将多页PDF转换为单独的图像文件。此方法将为PDF的每一页生成一个单独的图像。

在IronPDF中使用'ImageType'选项有什么优势?

'ImageType'选项在IronPDF中允许您直接指定输出图像格式,确保转换结果为正确的图像类型,即使路径中指定的文件扩展名不同。

我可以在哪里下载用于测试转换的示例PDF文件?

您可以从Learning Container和africau.edu等网站下载用于测试转换的示例PDF文件。这些资源提供各种PDF示例,可用于测试IronPDF的功能。

如何确保转换后的图像保留原始PDF的质量?

要确保转换后的图像保留原始PDF的质量,请使用IronPDF的默认设置或在rasterizeToImageFiles方法中调整分辨率设置以符合您的质量要求。

Darrius Serrant
全栈软件工程师(WebOps)

Darrius Serrant 拥有迈阿密大学的计算机科学学士学位,目前在 Iron Software 担任全栈 WebOps 市场工程师。从小就被编码吸引,他认为计算机既神秘又易于接触,使其成为创意和问题解决的理想媒介。

在 Iron Software,Darrius 喜欢创造新事物,并简化复杂概念以使其更易理解。作为我们常驻的开发者之一,他还自愿教授学生,与下一代分享他的专业知识。

对于 Darrius 来说,他的工作令人满意,因为它被重视并产生真正的影响。

准备开始了吗?
版本: 2025.11 刚刚发布