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

如何将 PDF 转换为图像文件

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

要在Node.js中将 PDF 文件转换为图像,请使用 IronPDF 的 rasterizeToImageFiles 方法。 此方法支持将 PDF 转换为 JPG、PNG、GIF 和其他格式,可选择转换所有页面或特定页面。 该库可高效处理转换过程,在保持高图像质量的同时,提供灵活的输出格式选择。

快速入门:将 PDF 转换为图像

  1. 安装IronPDF:npm install @ironsoftware/ironpdf
  2. 导入 PdfDocument
  3. 使用 PdfDocument.fromFile() 加载您的 PDF 文件
  4. 使用你的输出路径调用 rasterizeToImageFiles() 5.该方法可通过文件扩展名自动检测格式
:title=Quick PDF to PNG Conversion
import { PdfDocument } from "@ironsoftware/ironpdf";

PdfDocument.fromFile("./sample.pdf").then((pdf) => {
    pdf.rasterizeToImageFiles("./output.png");
});

要将 PDF 文件转换为图像,请使用IronPDF for Node.js模块提供的 rasterizeToImageFiles 方法。 配置此方法可将 PDF 转换为 JPG、PNG 和其他图像格式。 转换每个页面或选择特定页面。 IronPDF 可让您完全控制转换过程。

如何安装 IronPDF for PDF to Image Conversion?

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

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

在将 PDF 转换为图像之前,如果在生产中使用 IronPDF,请配置您的许可证密钥。 该库需要在系统中安装 IronPdfEngine,它负责处理 PDF 渲染操作。

如何将 PDF 转换为图像?

我们将使用包含占位符文本的 单页样本 PDF 文档。 对于更复杂的情况,可以考虑先将 HTML 转换为 PDF ,然后将结果转换为图像。

PDF 查看器正在显示 Lorem Ipsum 文本文件,尚未转换为图像格式 显示我们的样本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;
}).catch((error) => {
    console.error("Error converting PDF to image:", error);
});

我们使用 PdfDocument.fromFile 来加载我们的示例文档。 此函数返回一个代表我们示例文件的类。由于该对象包含在一个Promise中,因此我们为其附加一个回调函数,以便在 Promise 解析时运行。

在回调函数中,我们对已解析的对象调用 rasterizeToImageFiles,将单页文档转换为图像。 我们指定目标路径(包括文件名和文件扩展名)作为参数。 该方法支持各种格式,类似于 IronPDF 处理 在 PDF 中嵌入图片的方式。

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

Learning Container 提供 PDF 样本文件以供测试。 免费下载本示例中使用的 PDF 样本文件。 在其他不同大小和复杂程度的 PDF 上尝试上述示例。 有关更详细的图像转换示例,请查看 PDF 转图像综合指南

有哪些高级图像转换选项?

如何将 PDF 转换为 JPEG 格式?

默认情况下,rasterizeToImageFiles 会根据目标路径中指定的文件类型转换文档。 这种自动格式检测功能可以在不修改代码的情况下轻松切换图像格式。

要将示例 PDF 转换为 JPG 文件,请更改目标路径中的文件扩展名:

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

或者,指定 ImageType 选项。 ImageType 值会覆盖目标路径中声明的图像文件类型。 这样就强制 rasterizeToImageFiles 在执行转换时忽略文件名,从而可以明确控制输出格式。

下一个示例包含一个 JSON 选项参数,用于调用 rasterizeToImageFiles,该参数声明了 ImageType

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

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

该程序可创建 JPG 图像。 注意目标文件名仍使用 PNG 文件扩展名。 rasterizeToImageFiles 忽略 .PNG 扩展名,而是遵循 ImageType.JPG 值。 这种方法类似于 IronPdf 处理其他转换操作的方式,其中显式类型规范优先。

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

提示:当将文件名更改为特定类型不可行时,例如使用自动文件命名系统或在不同的输出格式中保持一致的命名约定时,这种方法非常有用。

如何将多页 PDF 转换为图像?

要转换多页文档,请按相同方式使用 rasterizeToImageFiles 方法。 该方法将每个页面创建为指定类型的单独图像,并自动在文件名后添加页码。 该功能在创建图片库或处理 多页文档时非常有用。

在查看器中打开的两页PDF文档,显示图像转换过程之前的示例内容 一个两页的样本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生成的独立PNG文件,文件名中显示了自动生成的页码 使用 rasterizeToImageFiles 方法处理一个两页的 PDF 文件后,会生成一个图像。该方法会为原始文件的每一页创建一个图像。

如何仅转换特定页面?

使用带有 fromPages 属性的 JSON 对象来栅格化多页文档中的特定页面。 在处理只需要某些页面的大型 PDF 时,这种选择性转换非常有用,类似于从 PDF 中删除特定页面

下面的代码示例仅将这个大样本文件的第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 (0-indexed)
    dpi: 150  // Balance quality and file size
};
PdfDocument.fromFile("./sample-pdf-with-images.pdf").then((pdf) => {
    pdf.rasterizeToImageFiles("./images/multipage-selective-pdf/multipage-pdf-page.bmp", options);
}).catch((error) => {
    console.error("Failed to convert pages:", error);
});

已成功将四个 PDF 页面转换为图像,显示多页 PDF 文件:page_2、page_4、page_7 和 page_9 IronPDF仅对我们在 options 参数中指定的页面执行了 PDF 到图像的操作。

选择性页面转换功能适用于所有支持的图像格式,并保持您指定的质量设置。 如需进行更复杂的页面操作,请查阅 全面的 API 参考,其中详细介绍了所有可用的选项和方法。

在哪里可以找到更多资源?

在哪里可以找到 API 文档?

请阅读PdfDocument 类及其 rasterizeToImageFiles 方法的 API 文档,以了解更多关于如何调整方法以满足您的需求的信息。 文档提供了所有可用参数和选项的详细信息。

还有哪些其他代码示例?

-使用IronPDF将 PDF 转换为图像:请参阅 rasterizeToImageFiles,它以略微不同的方式使用,并具有额外的配置选项。

常见问题解答

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

使用 IronPDF 的 `rasterizeToImageFiles` 方法在 Node.js 中将 PDF 文件转换为图像。首先使用 `npm install @ironsoftware/ironpdf` 安装 IronPDF,然后使用 `PdfDocument.fromFile()` 加载 PDF 文件,并使用所需的输出路径调用 `rasterizeToImageFiles()` 。该方法会根据文件扩展名自动检测图像格式。

转换 PDF 时支持哪些图像格式?

IronPDF 支持将 PDF 转换为多种图像格式,包括 JPG、PNG、GIF 和其他常见格式。rasterizeToImageFiles "方法会根据你在输出路径中指定的文件扩展名自动确定输出格式。

我能否将 PDF 的特定页面转换为图像?

是的,IronPDF 允许您在使用 `rasterizeToImageFiles` 方法时转换所有页面或选择特定页面。这样,您就可以完全控制将 PDF 文档中的哪些页面转换为图像文件。

PDF 转换为图像的安装要求是什么?

要将 PDF 转换为图片,需要使用 `npm install @ironsoftware/ironpdf` 安装 IronPDF。该库还需要在系统中安装 IronPDF Engine,它负责处理 PDF 的渲染操作。若要用于生产,您需要配置许可证密钥。

转换是否能保持较高的图像质量?

是的,IronPDF 可以高效地处理转换过程,同时保持较高的图像质量。rasterizeToImageFiles "方法可确保您的 PDF 内容准确地呈现为图像,而不会出现明显的质量损失。

PDF 到图像的转换过程是异步的吗?

是的,IronPDF 中的转换操作是使用承诺异步执行的。您可以使用".then() "来处理成功的转换,或使用".catch() "来处理 PDF 到图片转换过程中可能出现的任何错误。

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

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

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

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

准备开始了吗?
版本: 2026.3 刚刚发布
Still Scrolling Icon

还在滚动吗?

想快速获得证据?
运行示例看着你的HTML代码变成PDF文件。