跳過到頁腳內容
使用 IRONPDF FOR NODE.JS
如何在 Node js 中不使用 Pupateer 將 HTML 轉換為 PDF

在 Node.js 中不使用 Puppeteer 將 HTML 轉換成 PDF

在瞬息萬變、不斷發展的 Web 開發領域,將 HTML 轉換為 PDF 的需求出現的頻率非常高。 這種需求涵蓋了廣泛的應用領域,從創建詳細的報告和發票到以易於列印的格式保存網路內容這一重要任務。 在Node.js環境下,將HTML頁面無縫轉換為PDF是開發人員應對現代Web應用程式複雜性的關鍵要求。

本文將探討在不使用 Puppeteer 的情況下,如何在 Node.js 中實作 HTML 到 PDF 的轉換。 雖然Puppeteer 以無頭模式運行,就像一個無頭瀏覽器一樣,但開發者現在可以存取各種各樣的替代庫。 其中, IronPDF for Node.js 庫脫穎而出,成為一個非常出色的選擇——這是一個功能極其強大的工具,專門用於在 Node.js (JavaScript) 生態系統中執行與 PDF 相關的操作。

1. 如何在不使用 Puppeteer 的情況下,在 Node.js 中將 HTML 轉換為 PDF

  1. 在 Node.js 中安裝 PDF 函式庫,無需 Puppeteer 即可將 HTML 轉換為 PDF。
  2. 導入所需的依賴項。
  3. 使用PdfDocument.fromUrl方法從 URL 建立 PDF 檔案。
  4. 使用PdfDocument.fromHtml方法將 HTML 字串渲染為 PDF。
  5. 使用saveAs方法儲存已建立的 PDF 檔案。

2. IronPDF 簡介。

IronPDF是一個功能強大的 Node.js PDF 庫,它提供了一套用於處理 PDF 文件的強大功能。 它的主要功能之一是無需 Puppeteer 即可將 HTML 轉換為 PDF 格式。 這使得 IronPDF 成為開發人員在 Node.js 應用程式中處理 HTML 到 PDF 轉換時一個極具吸引力的解決方案,它提供了一種輕量級且高效的方法。 IronPDF 也支援 CSS 版本和標頭的轉換。 IronPDF 讓您從影像產生 PDF,這些 PDF 可以在生產環境中無縫運作。

2.1. IronPDF 的顯著特點

  1. PDF 產生 IronPDF 使開發人員能夠從頭開始建立 PDF 文檔,從而完全控制內容、格式和佈局。
  2. PDF 解析該程式庫便於從現有的 PDF 文件中提取文字、圖像和其他元素,使開發人員能夠操作儲存在這些文件中的資料。
  3. PDF 修改: IronPDF 支援動態修改預先存在的 PDF 文件,可依需求新增、刪除或更新內容。
  4. PDF 渲染:使用 IronPDF 的開發人員可以渲染各種格式的 PDF 文件,包括從影像HTML 渲染。 這種多功能性擴展了在 Web 應用程式中顯示 PDF 內容的選擇範圍。 5.跨平台相容性: IronPDF 在設計時充分考慮了相容性,可在不同的作業系統上無縫運行,確保無論部署環境如何,都能保持一致的行為。

3. 安裝 IronPDF

IronPDF的入門流程非常簡單。 要將 IronPDF安裝到您的 Node.js 專案中,您可以使用 NPM,即 Node.js 庫的套件管理器。 打開終端機並執行以下命令:

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

此命令將下載並安裝 IronPDF 庫,使其可在您的專案中使用。 若要安裝使用 IronPDF 庫所需的 IronPDF 引擎,請在控制台上執行以下命令:

npm install @ironsoftware/ironpdf-engine-windows-x64
npm install @ironsoftware/ironpdf-engine-windows-x64
SHELL

4. HTML 轉 PDF 生成

現在 IronPDF 已經下載並安裝完畢,讓我們來探索如何使用它將 HTML 轉換為 PDF,並逐步介紹三種常見場景:將 URL 轉換為 PDF、將 HTML 字串轉換為 PDF 以及將 HTML 檔案轉換為 PDF。

4.1. 使用 IronPDF 從 URL 建立 PDF 文件

將網頁轉換為 PDF 是一種常見的需求,尤其是在處理伺服器產生的動態內容時。 IronPDF 讓這個過程變得簡單。 以下是一個簡單的程式碼範例:

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

(async () => {
  // URL of the web page to convert to PDF
  const url = "https://google.com";

  // Create a PDF document from the specified URL
  const pdf = await PdfDocument.fromUrl(url);

  // Save the PDF to a file
  await pdf.saveAs("output_from_url.pdf");
})();
import { PdfDocument } from "@ironsoftware/ironpdf";

(async () => {
  // URL of the web page to convert to PDF
  const url = "https://google.com";

  // Create a PDF document from the specified URL
  const pdf = await PdfDocument.fromUrl(url);

  // Save the PDF to a file
  await pdf.saveAs("output_from_url.pdf");
})();
JAVASCRIPT

這段程式碼使用 IronPDF 庫將網頁(本例中為 Google 首頁)轉換為 PDF 檔案。它指定了網頁的 URL,使用PdfDocument.fromUrl方法產生 PDF 文件,並將其儲存為"output_from_url.pdf"。 整個過程被封裝在一個非同步函數中,以確保順序執行。 這段程式碼片段展示了在Node.js中使用IronPDF進行HTML到PDF轉換的簡單性。

無需 Puppeteer,即可在 Node.js 中將 HTML 轉換為 PDF,圖 1:使用 IronPDF 庫從 URL 產生的輸出 PDF 使用 IronPDF 庫從 URL 產生輸出 PDF 文件

4.2. 將 HTML 字串轉換為 PDF 文件

如果您有 HTML 內容字串,需要將其轉換為 PDF,IronPDF 也為此場景提供了一個方便的方法:

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

(async () => {
  // Create a PDF from an HTML string
  const htmlString = "<h1>Hello Developers! This is an Example PDF created with IronPDF</h1>";
  const pdf = await PdfDocument.fromHtml(htmlString);

  // Export the PDF to a file
  await pdf.saveAs("output.pdf");
})();
import { PdfDocument } from "@ironsoftware/ironpdf";

(async () => {
  // Create a PDF from an HTML string
  const htmlString = "<h1>Hello Developers! This is an Example PDF created with IronPDF</h1>";
  const pdf = await PdfDocument.fromHtml(htmlString);

  // Export the PDF to a file
  await pdf.saveAs("output.pdf");
})();
JAVASCRIPT

此程式碼範例使用 IronPDF 庫將簡單的 HTML 字串(標題標籤)快速轉換為 PDF 文件。 然後,它將生成的 PDF 文件保存為"output.pdf"。腳本簡潔明了,採用非同步函數進行順序執行。 這展示了在Node.js環境下使用IronPDF從HTML建立PDF的簡易性。

無需 Puppeteer,即可在 Node.js 中將 HTML 轉換為 PDF,圖 2:使用 IronPDF 庫從 HTML 字串產生的輸出 PDF 使用 IronPDF 庫從 HTML 字串產生輸出 PDF

4.3. HTML 檔案轉 PDF

對於 HTML 內容儲存在文件中的情況,IronPDF 提供了一種將其轉換為 PDF 的簡單方法。 以下是一個範例:

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

(async () => {
  // Render the HTML file
  const pdf = await PdfDocument.fromHtml("label.html");

  // Export the PDF document
  await pdf.saveAs("output.pdf");
})();
import { PdfDocument } from "@ironsoftware/ironpdf";

(async () => {
  // Render the HTML file
  const pdf = await PdfDocument.fromHtml("label.html");

  // Export the PDF document
  await pdf.saveAs("output.pdf");
})();
JAVASCRIPT

此程式碼片段利用 IronPDF 庫將 HTML 檔案("label.html")的內容轉換為 PDF 文件。 渲染後的PDF檔案將儲存為"output.pdf"。 該過程的簡單性體現在其簡潔的腳本中,該腳本採用非同步函數在 Node.js 環境中進行順序執行。

在不使用 Puppeteer 的情況下,如何在 Node.js 中將 HTML 轉換為 PDF,圖 3:使用 IronPDF 庫從 HTML 檔案產生的輸出 PDF 使用 IronPDF 庫從 HTML 文件產生輸出 PDF 文件

5.結論

本指南探討了在Node.js環境下,無需依賴Puppeteer即可將HTML轉換為PDF的過程。 IronPDF被證明是一個強大而高效的替代方案,它提供了一系列用於處理 PDF 相關任務的功能。 無論您需要將 URL、HTML 字串或 HTML 文件轉換為 PDF,還是從 PNG 圖片產生 PDF 文件,IronPDF 都能提供無縫解決方案。

在將 HTML 轉 PDF 轉換功能整合到 Node.js 應用程式中時,請考慮專案的特定要求以及 IronPDF 提供的靈活性。 IronPDF 易於使用且功能強大,對於尋求在 Node.js 中產生 PDF 的可靠輕量級解決方案的開發人員來說,它是一款非常有價值的工具。

要了解有關IronPDF for Node.js 的更多信息,請訪問文件頁面。 使用 IronPDF for Node.js 將 HTML 轉換為 PDF 的完整教學課程可在以下Node.js 教學連結中找到。

IronPDF 提供免費試用許可證,供使用者入門,然後再決定是否購買永久許可證

常見問題解答

不使用 Puppeteer,如何在 Node.js 中將 HTML 轉換為 PDF?

您可以利用 IronPDF for Node.js 函式庫,在 Node.js 中將 HTML 轉換為 PDF,而無需使用 Puppeteer。IronPDF 允許您使用直接的方法執行此轉換,例如 PdfDocument.fromHtmlPdfDocument.fromUrl

我可以使用何種方法在 Node.js 中將網頁轉換為 PDF?

若要在 Node.js 中將網頁轉換為 PDF,您可以使用 IronPDF 的 PdfDocument.fromUrl 方法,此方法可讓您輕鬆地將網頁渲染為 PDF 文件。

如何在 Node.js 專案中安裝 IronPDF?

若要在 Node.js 專案中安裝 IronPDF,請在終端機使用 npm install @ironsoftware/ironpdf 指令。

IronPDF 可以用來將 HTML 檔案轉換為 PDF 嗎?

是的,IronPDF 可以使用 PdfDocument.fromHtmlFile 等方法將 HTML 檔案轉換為 PDF,從而實現基於檔案的高效轉換。

與 Puppeteer 相比,使用 IronPDF 進行 HTML 至 PDF 的轉換有哪些主要優勢?

IronPDF 提供輕量級的 HTML 至 PDF 轉換解決方案,不需要像 Puppeteer 之類的無頭瀏覽器。它高效、易用,並採用跨平台相容的設計,非常適合 Node.js 應用程式中的各種 PDF 作業。

如何保存 IronPDF 生成的 PDF?

您可以使用 saveAs 方法儲存 IronPDF 所產生的 PDF,此方法可讓您指定輸出 PDF 所需的檔案名稱。

IronPDF 是否支持在 Node.js 環境中跨平台使用?

是的,IronPDF 的設計可在不同作業系統中無縫運作,確保在 Node.js 環境中的一致行為和相容性。

IronPDF 是否提供免費試用?

是的,IronPDF 提供免費試用授權,讓開發人員在決定購買永久授權之前測試其功能。

Darrius Serrant
全棧軟件工程師 (WebOps)

Darrius Serrant 擁有邁阿密大學計算機科學學士學位,目前任職於 Iron Software 的全栈 WebOps 市場營銷工程師。從小就迷上編碼,他認為計算既神秘又可接近,是創意和解決問題的完美媒介。

在 Iron Software,Darrius 喜歡創造新事物,並簡化複雜概念以便於理解。作為我們的駐場開發者之一,他也自願教學生,分享他的專業知識給下一代。

對 Darrius 來說,工作令人滿意因為它被重視且有實際影響。