跳過到頁腳內容
使用IRONPDF
如何在 C#| IronPDF 中從模板生成 PDF

如何在C#中從模板生成PDF

PDF 文件在當今社會非常普遍,各種企業都使用它來建立發票和其他文件。 在為專案選擇.NET程式庫時,應考慮建立、讀取和寫入 PDF 檔案的便利性。

IronPDF功能

IronPDF是市面上最好的HTML轉PDF轉換器之一。 IronPDF幾乎可以處理瀏覽器能夠處理的任何操作。 它可以利用 HTML5、 JavaScript、CSS 和圖像創建 PDF 文件。 .NET PDF 函式庫讓產生 PDF 檔案、讀取現有 PDF 和編輯 PDF 檔案變得簡單。 可進行的修改包括更改字體大小、分頁、文字內容等。 IronPDF 使用者可以在渲染的 PDF 文件中建立IronPDF欄位。

IronPDF與所有.NET Framework專案類型相容,包括ASP.NET、Windows Forms 和其他傳統IronPDF應用程式類型。 IronPDF 能夠將 ASPX、 Razor和其他 MVC 視圖元件直接渲染到 PDF 中。

IronPDF 的全部功能包括:

在 Visual Studio 中建立新項目

本文將透過一個簡單的控制台應用程式來示範 IronPDF 的文件產生功能。

開啟 Visual Studio 軟體,然後前往"檔案"選單。 選擇"新建專案",然後選擇"控制台應用程式"。

如何在 C# 中從範本產生 PDF,圖 1:新建專案 新專案

請指定項目名稱及其所在地。 按一下"下一步"按鈕,然後選擇.NET Framework。

如何在 C# 中從範本產生 PDF,圖 2: .NET Framework選擇 .NET Framework選擇

最後,點選"建立"按鈕產生新的 Visual Studio 專案。

如何在 C# 中從範本產生 PDF,圖 3: .NET Program.cs .NET程序.cs

3. 安裝IronPDF庫

IronPDF庫可以透過四種方式下載和安裝。

這四種方法分別是:

使用 Visual Studio。

  • 使用 Visual Studio 命令列。
  • 直接從NuGet網站下載。
  • 直接從IronPDF網站下載。

3.1 使用 Visual Studio

Visual Studio 軟體中提供了NuGet套件管理器,方便使用者從NuGet安裝套件。 下面這張截圖展示如何開啟NuGet套件管理器 GUI。

如何在 C# 中從模板產生 PDF,圖 4: NuGet套件管理器 NuGet套件管理器

在軟體包管理器 GUI 的"瀏覽"標籤中搜尋"IronPDF"。

如何在 C# 中從範本產生 PDF,圖 5: IronPDF安裝 IronPDF安裝

選擇 IronPdf 軟體包(第一個選項),然後按一下 安裝 按鈕將其新增至解決方案。

3.2 使用 Visual Studio 命令列

在 Visual Studio 中,前往"工具" > "NuGet套件管理員" > "套件管理員控制台"。

在套件管理員控制台標籤中輸入以下命令,然後按 ENTER 鍵。

Install-Package IronPdf

如何在 C# 中從範本產生 PDF,圖 6:安裝IronPDF 安裝IronPDF

3.3 直接從NuGet網站下載

  • 導覽至IronPDF NuGet套件頁面
  • 點選右側選單中的"下載軟體包"。
  • 在 Windows 資源管理器中按兩下下載的軟體包,即可自動安裝到您的專案中。

3.4 直接從IronPDF網站下載

使用最新版本的IronPDF軟體包直接下載IronPDF ZIP 檔案

下載完成後,請按照以下步驟將軟體包新增至專案。

  • 在解決方案資源管理器視窗中以滑鼠右鍵按一下專案。 然後,選擇"參考資料"選項,瀏覽下載的參考資料的位置。 接下來,按一下"確定"以新增引用。

4. 從範本建立 PDF 文檔

下面的程式碼範例展示如何僅用幾行程式碼從給定的 HTML 範本建立 PDF 檔案。

using System;
using System.Collections.Generic;
using System.Text;
using IronPdf;

class Program
{
    static void Main()
    {
        // Create an instance of ChromePdfRenderer
        var renderer = new IronPdf.ChromePdfRenderer();

        // Render the HTML as PDF and save it as Test.pdf
        renderer.RenderHtmlAsPdf(BuildTemplate()).SaveAs("Test.pdf");
    }

    /// <summary>
    /// Builds an HTML template string using StringBuilder
    /// </summary>
    /// <returns>HTML string representation of a table</returns>
    static string BuildTemplate()
    {
        var builder = new StringBuilder();
        builder.Append("<table border='1'>");
        builder.Append("<tr>");
        builder.Append("<th>");
        builder.Append("Cat Family");
        builder.Append("</th>");
        builder.Append("</tr>");

        // Iterate over the data and populate the table rows
        foreach (var item in GetData())
        {
            builder.Append("<tr>");
            builder.Append("<td>");
            builder.Append(item.ToString());
            builder.Append("</td>");
            builder.Append("</tr>");
        }

        builder.Append("</table>");
        return builder.ToString();
    }

    /// <summary>
    /// Provides a list of data representing different members of the cat family
    /// </summary>
    /// <returns>List of strings</returns>
    static List<string> GetData()
    {
        List<string> data = new List<string>
        {
            "Lion",
            "Tiger",
            "Cat",
            "Cheetah",
            "Lynx"
        };

        return data;
    }
}
using System;
using System.Collections.Generic;
using System.Text;
using IronPdf;

class Program
{
    static void Main()
    {
        // Create an instance of ChromePdfRenderer
        var renderer = new IronPdf.ChromePdfRenderer();

        // Render the HTML as PDF and save it as Test.pdf
        renderer.RenderHtmlAsPdf(BuildTemplate()).SaveAs("Test.pdf");
    }

    /// <summary>
    /// Builds an HTML template string using StringBuilder
    /// </summary>
    /// <returns>HTML string representation of a table</returns>
    static string BuildTemplate()
    {
        var builder = new StringBuilder();
        builder.Append("<table border='1'>");
        builder.Append("<tr>");
        builder.Append("<th>");
        builder.Append("Cat Family");
        builder.Append("</th>");
        builder.Append("</tr>");

        // Iterate over the data and populate the table rows
        foreach (var item in GetData())
        {
            builder.Append("<tr>");
            builder.Append("<td>");
            builder.Append(item.ToString());
            builder.Append("</td>");
            builder.Append("</tr>");
        }

        builder.Append("</table>");
        return builder.ToString();
    }

    /// <summary>
    /// Provides a list of data representing different members of the cat family
    /// </summary>
    /// <returns>List of strings</returns>
    static List<string> GetData()
    {
        List<string> data = new List<string>
        {
            "Lion",
            "Tiger",
            "Cat",
            "Cheetah",
            "Lynx"
        };

        return data;
    }
}
$vbLabelText   $csharpLabel

在上面的程式碼中:

  • 首先,我們建立一個IronPDF類別的實例來存取 PDF 建立功能。 接下來,我們呼叫 RenderHtmlAsPdf 方法,並將 BuildTemplate 方法建構的 HTML 字串傳遞給它。 此方法將 HTML 轉換為 PDF。
  • BuildTemplate 方法使用 StringBuilder 建立一個填入了資料的 HTML 表格。
  • GetData 傳回一個表示"貓家族"的字串列表,該列表填入 HTML 表格的行。

下面是一個範例 PDF 文件,它使用上述程式碼和給定的模板,只用幾行程式碼就產生了。

如何在 C# 中從範本產生 PDF,圖 7:產生的 PDF 檔案 生成的PDF文件

可以使用任何類型的 HTML 標籤來建立模板,該模板可以幫助使用者產生使用者表單、收據等,其中包含範例模板但資料不同。

可以使用方法RenderUrlAsPdfRenderHtmlFileAsPdf從不同的來源產生 PDF 檔案。 前一種方法接受網頁的 URL,而後一種方法接受包含電腦上 HTML 檔案位置的字串。

請閱讀這篇關於如何從 HTML 產生 PDF 的教程,以了解更多資訊。

結論

使用免費試用金鑰,即可在生產環境中使用無浮水印的IronPDF 。 IronPDF提供 SaaS 和 OEM 再分送許可,需額外付費。了解更多信息,請參閱IronPDF許可頁面

常見問題解答

如何使用 C# 從 HTML 模板生成 PDF?

您可以使用 IronPDF 在 C# 中從 HTML 模板生成 PDF。首先,使用 StringBuilder 類創建包含數據佔位符的 HTML 字符串。然後,用您的數據填充模板,並使用 IronPDF 的 RenderHtmlAsPdf 方法將 HTML 轉換為 PDF 文檔。

IronPDF 提供哪些將 HTML 轉換為 PDF 的方法?

IronPDF 提供多種將 HTML 轉換為 PDF 的方法,包括處理 HTML 字符串的 RenderHtmlAsPdf、處理本地 HTML 文件的 RenderHtmlFileAsPdf,以及通過 URL 處理網頁的 RenderUrlAsPdf。這些方法允許從不同的 HTML 資源靈活創建 PDF。

如何在我的 C# 項目中安裝 IronPDF?

要在 C# 項目中安裝 IronPDF,您可以使用 Visual Studio 中的 NuGet 包管理器。搜尋 'IronPDF' 並點擊安裝,或者使用 Package Manager Console 來輸入命令 Install-Package IronPDF

IronPDF 在轉換到 PDF 時能處理複雜的 HTML5 和 JavaScript 嗎?

是的,IronPDF 能夠處理複雜的 HTML5 和 JavaScript,確保將複雜的網頁轉換為 PDF 文檔時保持預期的格式和功能。

在 C# 中從模板生成 PDF 的一些常見用途是什麼?

在 C# 中從模板生成 PDF 的常見用途包括創建發票、報告和表單。IronPDF 允許您自動化這些過程,將動態的 HTML 模板填充數據後轉換為專業的 PDF 文檔。

IronPDF 是否與 ASP.NET 和 Windows Forms 兼容?

是的,IronPDF 與包括 ASP.NET 和 Windows Forms 在內的各種 .NET Framework 項目類型兼容,這使其在不同應用程序開發環境中非常通用。

如何創建新的 Visual Studio 項目以使用 IronPDF 生成 PDF?

要創建新的使用 IronPDF 的 Visual Studio 項目,首先打開 Visual Studio,選擇“新建項目”,選擇“控制台應用程序”,指定項目名稱和位置,選擇 .NET Framework,然後點擊“創建”。之後,通過 NuGet 安裝 IronPDF。

IronPDF 可以從帶有登錄表單的安全網頁生成 PDF 嗎?

是的,IronPDF 可以從需要通過 HTML 登錄表單進行身份驗證的網頁中生成 PDF,允許您有效地處理安全和受保護的網頁內容。

IronPDF是否完全與.NET 10兼容以及這種支持涉及什麼?

是的,IronPDF完全與.NET 10兼容。它在.NET 10項目中開箱即用,無需任何額外配置,支持現代部署目標(Windows、Linux、容器),並利用.NET 10中的新性能改進,同時保持相同的API和功能集。(來源:IronPDF對.NET 10兼容性的文件)

Curtis Chau
技術作家

Curtis Chau 擁有卡爾頓大學計算機科學學士學位,專注於前端開發,擅長於 Node.js、TypeScript、JavaScript 和 React。Curtis 熱衷於創建直觀且美觀的用戶界面,喜歡使用現代框架並打造結構良好、視覺吸引人的手冊。

除了開發之外,Curtis 對物聯網 (IoT) 有著濃厚的興趣,探索將硬體和軟體結合的創新方式。在閒暇時間,他喜愛遊戲並構建 Discord 機器人,結合科技與創意的樂趣。

Iron Support Team

We're online 24 hours, 5 days a week.
Chat
Email
Call Me