如何将PDF转换为图像文件
要将PDF文件转换为图像,请使用IronPDF的NodeJS模块提供的rasterizeToImageFiles方法。 您可以配置此方法以支持多种PDF到图像的转换操作。 将PDF转换为JPG、PNG和其他图像格式。 将每个PDF页面转换为JPEG或PNG图像,或仅转换几个页面。 IronPDF为您提供完全的控制权。
继续阅读以了解如何使用 IronPDF for Node.js 执行 PDF 转换为图像的任务!
使用 NPM 安装 IronPDF
npm i @ironsoftware/ironpdf
从 NPM 安装 IronPDF 的 Nodejs 模块,以将 PDF 转换为 PNG、JPG(或 JPEG)、GIF 及其他图像类型。
将PDF转换为图像格式
假设我们正在处理一个包含占位符文本的单页样本PDF文档。

**一张图片显示我们的示例PDF文件在PDF查看器应用程序中打开。 从Learning Container下载此PDF文件和其他供测试用的文件。
下面的源代码将PDF文件转换为PNG文件。
import { PdfDocument } from "@ironsoftware/ironpdf";
// Convert PDF File to a PNG File
await PdfDocument.fromFile("./sample-pdf-file.pdf").then((resolve) => {
resolve.rasterizeToImageFiles("./images/sample-pdf-file.png");
return resolve;
});
import { PdfDocument } from "@ironsoftware/ironpdf";
// Convert PDF File to a PNG File
await PdfDocument.fromFile("./sample-pdf-file.pdf").then((resolve) => {
resolve.rasterizeToImageFiles("./images/sample-pdf-file.png");
return resolve;
});
我们使用PdfDocument.fromFile方法将示例文档加载到Node库中。 此函数在 IronPDF 中提供了一个PdfDocument类,表示我们的示例文件。由于我们需要的对象包含在Promise中,因此我们附加了一个回调函数,以便在 Promise 解析PdfDocument时运行。
在回调函数中,我们在已解析的对象上调用rasterizeToImageFiles IronPDF函数,将单页文档转换为图像。 如上所示,我们将新图像的目标路径(包括文件名和文件扩展名)作为参数指定。

该图像是从上面的源代码生成的。 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");
// Convert PDF to JPG (not to PNG)
pdf.rasterizeToImageFiles("./images/pdf-to-jpeg.jpg");
另一种实现相同功能的方法是在IronPDF中指定ImageType选项。 ImageType 值优先于在目标路径中声明的图像文件类型。 这迫使rasterizeToImageFiles在执行图像到PDF任务时不考虑文件名。
在下一个示例中可以看到这一点。 在这里,我们在调用rasterizeToImageFiles时包含一个JSON选项参数,该参数声明了ImageType。
import { PdfDocument, ImageType } from "@ironsoftware/ironpdf";
// Convert PDF to JPEG Format using ImageType.JPG
const options = {
type: ImageType.JPG
};
await PdfDocument.fromFile("./sample-pdf-file.pdf").then((resolve) => {
pdf.rasterizeToImageFiles("./images/pdf-to-jpeg.png", options);
return resolve;
});
import { PdfDocument, ImageType } from "@ironsoftware/ironpdf";
// Convert PDF to JPEG Format using ImageType.JPG
const options = {
type: ImageType.JPG
};
await PdfDocument.fromFile("./sample-pdf-file.pdf").then((resolve) => {
pdf.rasterizeToImageFiles("./images/pdf-to-jpeg.png", options);
return resolve;
});
运行上述程序也会像我们之前的示例一样创建一个JPG图像。 请注意,目标文件名仍然使用PNG文件扩展名。 rasterizeToImageFiles 忽略了路径中使用的.PNG文件扩展名,而是遵循了ImageType.JPG类型值。
您可以调整此示例以将PDF转换为其他图像类型,包括GIF格式和位图格式。
提示:使用这种方法在需要将文件名更改为特定类型不可行或不需要的情况下特别有用。
将多页 PDF 文件转换
要将包含多页的文档转换为所需的图像类型(PNG、JPG、Bitmap等),我们同样可以使用rasterizeToImageFiles方法。 当调用时,该方法将每个页面作为指定类型的单独图像输出。

一份两页的示例PDF文档。
下一段示例代码从上面显示的两页PDF文件示例生成两个PNG文件。
import { PdfDocument } from "@ironsoftware/ironpdf";
// Convert PDF with two pages to a set of images.
await PdfDocument.fromFile("./multipage-pdf.pdf").then((pdf) => {
pdf.rasterizeToImageFiles("./images/multipage-pdf/multipage-pdf-page.png");
});
import { PdfDocument } from "@ironsoftware/ironpdf";
// Convert PDF with two pages to a set of images.
await PdfDocument.fromFile("./multipage-pdf.pdf").then((pdf) => {
pdf.rasterizeToImageFiles("./images/multipage-pdf/multipage-pdf-page.png");
});
使用rasterizeToImageFiles方法处理一个两页PDF文件的结果。该方法为原文件的每一页创建一个图像。
将特定PDF页面转换为图片。
声明一个设置了fromPages属性的JSON对象可以让我们从多页文档中栅格化一个或多个页面(而不是所有页面)。
以下代码示例仅将此大型示例文件的第一页、第四页、第六页和第九页转换为位图。
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 pages with an image on it.
};
await PdfDocument.fromFile("./sample-pdf-with-images.pdf").then((pdf) => {
pdf.rasterizeToImageFiles("./images/multipage-selective-pdf/multipage-pdf-page.bmp", options);
});
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 pages with an image on it.
};
await PdfDocument.fromFile("./sample-pdf-with-images.pdf").then((pdf) => {
pdf.rasterizeToImageFiles("./images/multipage-selective-pdf/multipage-pdf-page.bmp", options);
});

IronPDF仅对我们在options参数中指定的页面执行了PDF到图像的操作。
开始使用IronPDF
立即在您的项目中开始使用IronPDF,并享受免费试用。
更多阅读
API文档
阅读关于PdfDocument类及其rasterizeToImageFiles方法的API文档,以获得更多关于如何调整该方法以满足您需求的见解。
代码示例
- 使用IronPDF将PDF转换为图像:查看以稍微不同方式使用的
rasterizeToImageFiles。 - 使用IronPDF将图片转换为PDF文件:了解如何将一个或多个图片转换为单个PDF文件。

