如何将 PDF 转换为图像文件
要将 PDF 文件转换为图像,请使用 IronPDF 的 NodeJS 模块提供的 rasterizeToImageFiles
方法。您可以对该方法进行配置,以支持各种 PDF 到图像的转换操作。将 PDF 转换为 JPG、PNG 和其他图像格式。将 PDF 的每一页都转换为 JPEG 或 PNG 图像,或者只转换几页。IronPDF 让您完全掌控一切。
继续阅读,了解如何使用 IronPDF for Node.js 将 PDF 转换为图像!_
使用 NPM 安装 IronPDF
安装使用 npm
npm i @ironsoftware/ironpdf
从NPM安装IronPDF的Node.js模块以将PDF转换为PNG、JPG (或 JPEG)、GIF 和其他图像类型。
将 PDF 转换为图像格式
假设我们正在处理一个 一页 PDF 文件样本 包含占位符文本。
描述在 PDF 查看器应用程序中打开的 PDF 示例文件的图像。从 "学习容器 "下载此 PDF 文件和其他 PDF 文件用于测试:https://www.learningcontainer.com/
下面的源代码将 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;
});
我们使用 PdfDocument.fromFile
方法将样本文档加载到 Node 库中。该函数提供了一个 PDFDocument 代表我们的示例文件。由于我们需要的对象包含在 承诺,我们附加一个回调函数,以便在承诺解析出 PdfDocument
时运行。
在回调函数中,我们调用 光栅化图像文件 方法将单页文档转换为图像。如上图所示,我们指定了目标路径 (其中包括文件名和文件扩展名) 作为新图像的参数。
图片由上述源代码生成。IronPDF 仅用三行代码就将我们的 PDF 样本转换成了 PNG 文件!
学习容器提供 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");
另一种方法是指定一个(n) 图像类型.图像类型 "值取代目标路径中声明的图像文件类型。这将迫使 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;
});
运行上面的程序也会像前面的例子一样生成 JPG 图像。但请注意,目标文件名仍使用 PNG 文件扩展名。rasterizeToImageFiles
忽略了路径中使用的 .PNG 文件扩展名,而是使用了 ImageType.JPG 类型值。
您可以调整此示例,将 PDF 转换为其他图像类型,包括 GIF 格式和位图格式。
提示: 在无法或不希望将文件名更改为特定类型的情况下,使用这种方法特别有用。
转换包含多个页面的 PDF 文件
将包含多页的文档转换为所需的图像类型 (PNG、JPG、位图等。)此外,我们还可以像以前一样使用 rasterizeToImageFiles
方法。调用该方法后,每个页面都将以指定类型的图像单独显示。
**两页 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");
});
**在两页 PDF 文件上使用 rasterizeToImageFiles
方法的结果。该方法为原始文件的每一页创建一个图像。
将特定 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);
});
**IronPDF 仅对我们在options
参数中指定的页面执行 PDF 转图像操作。
更多阅读
API 参考
阅读有关 PdfDocument
类及其 rasterizeToImageFiles
方法的 API 文档,了解如何调整该方法以满足您的需求。
代码示例
- 将 PDF 转换为图像:参见以略微不同方式使用的
rasterizeToImageFiles
。 - 图像转 PDF:了解如何将一个或多个图像转换成单个 PDF 文件。