跳過到頁腳內容
使用 IRONPDF FOR NODE.JS
如何在不使用 Puppeteer 的 Node.js 中將 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轉換的簡單性。

在Node.js中不使用Puppeteer將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的簡易性。

在Node.js中不使用Puppeteer將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環境中進行順序執行。

在Node.js中不使用Puppeteer將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 生成解決方案的開發人員來說,它是一款非常有價值的工具。

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

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

常見問題解答

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

您可以通過利用 IronPDF 庫在 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 @Iron Software/ironpdf

IronPDF 可以用來將 HTML 文件轉換為 PDF 嗎?

是的,IronPDF 可以使用像 PdfDocument.fromHtmlFile 這樣的方法將 HTML 文件轉換為 PDF,實現高效的文件轉換。

使用 IronPDF 將 HTML 轉換為 PDF 相較於 Puppeteer 的主要優勢是什麼?

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 來說,工作令人滿意因為它被重視且有實際影響。

鋼鐵支援團隊

我們每週 5 天,每天 24 小時在線上。
聊天
電子郵件
打電話給我