如何將 PDF 轉換為圖像文件

Darrius Serrant
Darrius Serrant
2023年7月18日
已更新 2025年1月8日
分享:
This article was translated from English: Does it need improvement?
Translated
View the article in English

要將 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 轉換為圖像文件,圖 1

顯示在 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;
});
NODE.JS

我們使用PdfDocument.fromFile方法將範例文件加載到Node庫中。 此功能提供了一個PdfDocument類在IronPDF中表示我們的範例文件。由於我們需要的對象包含在Promise中,我們附加了一個回調函數以在Promise解析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");
NODE.JS

另一種執行相同操作的方法是指定 ImageType 選項於 IronPDF。 在目的地路徑中聲明的圖像檔案類型將被 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;
});
NODE.JS

執行上述程序同樣會創建一個JPG圖像,如我們先前的例子所示。 請注意,目標檔案名稱仍使用PNG檔案擴展名。 rasterizeToImageFiles 忽略了路徑中使用的.PNG文件擴展名,而是遵循ImageType.JPG類型值。

您可以調整此示例以將 PDF 轉換為其他圖像類型,包括 GIF 格式和位圖格式。

提示:使用此方法在更改檔名為特定類型不可行或不希望的情況下特別有用。

轉換具有多頁的PDF文件

要將包含多頁的文件轉換為所需的圖像類型(PNG、JPG、Bitmap 等),我們也可以像之前一樣使用rasterizeToImageFiles方法。 當調用此方法時,將每個頁面作為指定類型的單獨圖像輸出。

如何將 PDF 轉換為圖像,圖 3

一個兩頁的範例 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");
});
NODE.JS

如何將 PDF 轉換為圖像,圖 4

使用rasterizeToImageFiles方法處理兩頁PDF文件的結果。該方法為原始文件的每一頁創建一個圖像。

將特定 PDF 頁面轉換為圖像

宣告一個 JSON 物件並設置 fromPages 屬性允許我們從多頁文件中光柵化一個或多個頁面(而不是所有頁面)。

以下代碼範例僅將此大樣本文件的第一、第四、第六和第九頁轉換為位圖。

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);
});
NODE.JS

如何將 PDF 轉換為圖像,圖 5

IronPDF 僅在我們於 options 參數中指定的頁面上執行了 PDF 到圖像的操作。

開始使用 IronPDF

立即在您的專案中使用IronPDF,並享受免費試用。

第一步:
green arrow pointer


進一步閱讀

API 參考文獻

閱讀有關PdfDocument類別及其rasterizeToImageFiles方法的API文件,以獲得更多有關如何調整方法以滿足您的需求的見解。

程式碼範例

Darrius Serrant
全端軟體工程師(WebOps)

Darrius Serrant 擁有邁阿密大學的計算機科學學士學位,目前擔任 Iron Software 的全端 WebOps 行銷工程師。自幼對編程產生興趣,他認為計算機既神秘又易於接觸,使其成為創造力和解決問題的完美媒介。

在 Iron Software,Darrius 享受創造新事物並簡化複雜概念使其更易理解的過程。作為我們的其中一位常駐開發人員,他也自願教導學生,將他的專業知識傳授給下一代。

對 Darrius 來說,他的工作之所以令人滿足,是因為它受到重視並且產生了真正的影響。