使用 IRONPDF FOR NODE.JS

如何在 Node.js 中從模板生成 PDF 檔案

發佈 2023年11月17日
分享:

Node.js, 一個執行伺服端 JavaScript 的動態運行環境,賦予開發人員創建多種應用程式的能力。其中一個引人注目的應用是從預定義的模板生成 PDF 文件。本指南旨在揭示如何利用 Node.js 的能力,通過將動態數據與模板結構合併來輕鬆創建 PDF。我們將探索將基於模板的 PDF 生成無縫集成到您的項目中的工具和技術,提供一個靈活且高效的解決方案來滿足各種文件生成需求。

在本文中,我們將展示如何使用一個名為 IronPDF 的 PDF 庫從 HTML 模板生成 PDF 文件的示例。 IronPDF for Node.js.

IronPDF for Node.js 是什麼

IronPDF 是一個強大且多功能的工具,能與Node.js無縫整合,使開發人員能夠輕鬆生成、操作和管理應用程式中的PDF文件。IronPDF具有全面的功能集和直觀的API,讓開發人員能夠簡化各種與PDF創建相關的任務,從創建視覺上吸引人的文件到添加互動元素,同時保持高度的控制和自定義。不論是生成報告、發票還是其他重要文件,IronPDF for Node.js提供了一個可靠且高效的解決方案,以無縫和開發者友好的方式滿足各種PDF頁面生成需求。

IronPDF 功能

  1. 從 HTML/CSS 生成 PDF: 從 HTML 和 CSS 資源生成 PDF 文件。這可以讓您將網頁或 HTML 範本轉換為 PDF 格式。

  2. PDF 操作和編輯: 編輯和修改現有的 PDF,添加、刪除或更新 PDF 文件中的文本、圖像、注釋和其他元素。

  3. PDF 合併與拆分: 將多個 PDF 文件合併為一個。 (合併) 或將單個PDF拆分為多個較小的PDF。

  4. 列印和表單處理: 控制列印設置並處理PDF中的互動式表單,包括表單提交和驗證。

  5. 安全性與加密: 實施安全措施,如密碼保護、加密、存取控制和數字簽名,以保護PDF文件。

  6. 文本提取: 從PDF中提取文本和數據,允許您在其他應用程序中使用內容或進行數據分析。

  7. 自訂化: 自訂PDF文件的外觀和佈局,包括頁面大小、字體、顏色、頁眉、頁腳和其他設計元素。

  8. 跨平台相容性: 確保該庫與不同作業系統上的Node.js相容,使其對於在各種平台上工作的開發人員而言非常靈活。

安裝 IronPDF for Node.js

在本節中,我們將介紹如何安裝 IronPDF for Node.js 並設置 Node.js 專案。

在開始之前,請確保系統已安裝 Node.js。

  1. 打開命令提示字元 (CMD) 並使用以下指令啟動一個新的 Node.js 專案:
    mkdir IronPDF   # Creates a new directory for the project. 
    cd IronPDF      # Navigates to the newly created directory. 
    npm init -y     # Creates a package.json file to store project-related metadata and dependencies.

如何在 Nodejs 中從模板生成 PDF 文件:圖 1 - 打開命令提示符(CMD)並執行命令:npm init -y

  1. 完成初始設置後,使用以下命令安裝IronPDF:

    ```:shell

    :ProductInstall

  2. 在 Visual Studio Code 中打開專案,並建立一個名為 "index.js" 的新檔案。

  3. 打開 package.json 檔案,在 "type" 下新增以下這行,以啟用模組使用:
    "type": "module",

如何在 Node.js 中從模板生成 PDF 檔案:圖 2

按照以下步骤, IronPDF for Node.js 已成功安裝,並且環境已設置好以運行 IronPDF 代碼。

使用 IronPDF for Node.js 從 HTML 範本創建 PDF

IronPDF 提供了一項功能,允許用戶從 HTML 模板或 HTML 頁面創建 PDF。此功能使用戶能夠使用用戶提供的輸入填充這些模板。

在下面提供的代碼中,我們將演示如何使用 HTML 模板生成和編寫 PDF 文件。

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

    const generatePdf = async (userInput, fileName) => {
      // HTML template with placeholders
      const htmlTemplate = `
        <!DOCTYPE html>
        <html>
        <body>
          <h1>${userInput.title}</h1>
          <p>User's name: ${userInput.userName}</p>
          <p>User's email: ${userInput.userEmail}</p>
        </body>
        </html>
      `;

      // Create a PDF from the modified HTML template
      const pdf = await PdfDocument.fromHtml(htmlTemplate);

      // Save the PDF
      await pdf.saveAs(fileName);
      console.log(`PDF saved as ${fileName}`);
    };

    const rl = readline.createInterface({
      input: process.stdin,
      output: process.stdout
    });

    rl.question('Enter title: ', (title) => {
      rl.question('Enter user name: ', (userName) => {
        rl.question('Enter user email: ', async (userEmail) => {
          // User-provided data
          const userInput = {
            title,
            userName,
            userEmail
          };

          // Generate the PDF
          await generatePdf(userInput, "output.pdf");

          rl.close();
        });
      });
    });
NODE.JS

上面的代碼範例定義了一個使用 readline 模組通過命令行獲取標題、用戶名和用戶電子郵件的JavaScript程式。該程式generatePdf()該方法被定義用來使用提供的HTML模板創建PDF文件並保存為給定的文件名。HTML模板包含標題、用戶名和用戶電子郵件的佔位符,這些佔位符將被用戶提供的數據填充。來自 **@ironsoftware/ironpdf** 包的PdfDocument` 類被用來根據HTML模板創建PDF。在生成PDF後,會以指定的文件名保存,並將確認保存的消息記錄到控制台。

readline 模組被用來提示用戶輸入相關數據,以序列問題的形式詢問標題、用戶名和用戶電子郵件。這些提示的用戶回應將被收集並存儲在一個名為 userInput 的對象中。生成PDF()`方法然後使用此使用者輸入和預設檔案名稱 "output.pdf" 被呼叫來根據提供的資料建立並儲存或下載 PDF 文件。最後,關閉 readline 介面,結束程式。

PDF 生成測試#1

如何從模板在Node.js中生成PDF文件:圖3

如何在Nodejs中使用模板生成PDF文件:圖4 - output.pdf

PDF 生成測試#2

如何在 Node.js 中使用模板生成 PDF 文件:圖 5

如何在 Nodejs 中從範本生成 PDF 文件:圖 6 - output.pdf

結論

本教程揭示了使用 Node.js 透過將動態數據與預先定義的模板結合來輕鬆生成 PDF 的過程,強調了其關鍵作用 IronPDF.

IronPDF, 無縫整合到 Node.js,賦予開發人員創建、操作和管理 PDF 文件的能力,提供全面的功能集,例如從 HTML/CSS 生成 PDF、編輯現有的 PDF 文件、合併/拆分它們、處理表單、確保安全性、啟用文字提取和自訂功能。

逐步的安裝過程和實用的範例展示了如何在 Node.js 專案中有效地實施 IronPDF。通過無縫整合基於模板的 PDF 生成,開發人員可以有效地滿足各種文件生成需求,使 Node.js 和 IronPDF 成為簡化和對開發人員友好的 PDF 生成的強大組合。同樣的技術可以用於動態生成發票。

您可以安裝 IronPDF 適用於 Node.js 並在以下位置找到代碼範例 網頁。

IronPDF 提供 免費試用 許可證,讓用戶在購買前試用 IronPDF 提供的所有功能。欲了解更多信息,請訪問 授權頁面.

< 上一頁
如何在 Node.js 中從 URL 下載 PDF 文件
下一個 >
節點 PDF 開發工具包 (開發者教學)

準備開始了嗎? 版本: 2024.9 剛剛發布

免費 npm 安裝 查看許可證 >