跳過到頁腳內容
使用IRONPDF
如何使用 C# 從範本產生 PDF | IronPDF

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

PDF 文件在當今文化中很普及,各種企業使用它們來創建發票和其他文件。 在為專案選擇 .NET 圖書館時,應考慮創建、閱讀和寫入 PDF 文件的便捷性。

class="hsg-featured-snippet">

如何在 C# 中從範本生成 PDF

  1. 安裝用於從範本生成 PDF 的 C# 圖書館
  2. 使用 StringBuilder 類構建 HTML 字串
  3. 用列表中的儲存數據填充 HTML 範本
  4. 使用 RenderHtmlAsPdf 方法從範本生成 PDF
  5. 將生成的 PDF 保存為新文件

IronPDF 功能

IronPDF 是市場上最好的 HTML 到 PDF 轉換器之一。 IronPDF 幾乎可以處理瀏覽器能夠處理的任何操作。 它可以從 HTML5、JavaScript、CSS 和圖像創建 PDF 文件。 .NET PDF 圖書館使產生/生成 PDF 文件、閱讀現有的 PDF 和編輯 PDF 文件變得簡單。 可能的修改包括更改字體大小、分頁、文本內容等。IronPDF 的用戶可以在渲染的 PDF 文件中創建表單欄位。

IronPDF 兼容所有 .NET Framework 專案類型,包括 ASP.NET、Windows Forms 和其他傳統的 Windows 應用程式類型。IronPDF 可以直接將 ASPX、Razor 和其他 MVC 視圖組件渲染為 PDF。

IronPDF 的全部功能包括:

  • 圖像轉換為 PDF(以及 PDF 頁面轉換為圖像)
  • 合併和拆分 PDF
  • 程式化地完成 PDF 表單
  • 從 PDF 中提取文本和圖像
  • IronPDF 可以將圖像文件以及 HTML 文件轉換為 PDF
  • 從網頁、HTML 標記和離線 HTML 文件創建 PDF
  • 生產從鎖定在 HTML 登入表單後的網頁的 PDF。
  • 註解 PDF
  • 添加頁眉、頁腳、文本、圖像、書籤、水印等等

在 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 Program.cs

3. 安裝 IronPDF 函式庫

IronPDF 圖書館可以通過四種方式下載和安裝。

這四種方式是:

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

3.1 使用Visual Studio

NuGet 包管理器可在 Visual Studio 軟件中使用,以便從 NuGet 輕鬆安裝包。 下面的截圖顯示如何打開 NuGet 包管理器 GUI。

如何在 C# 中從範本生成 PDF,圖 4:NuGet 包管理器 NuGet 包管理器

在包管理器 GUI 的 Browse 標籤中搜索 “IronPDF”。

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

選擇 IronPdf 包(第一個選項)並點擊 安裝 按鈕將其添加到方案中。

3.2 使用Visual Studio命令行

In Visual Studio, go to Tools > NuGet 包管理器 > Package Manager Console

在包管理器控制台標籤中輸入以下命令並按 ENTER 鍵。

Install-Package IronPdf

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

3.3 直接從 NuGet 網站下載

  • 導航到 IronPDF NuGet 包頁面
  • 點擊右側菜單中的下載包。
  • 雙擊 Windows Explorer 中的下載包以自動安裝到您的專案中。

3.4 直接從 IronPDF 網站下載

Download the IronPDF ZIP file directly with the latest version of the IronPDF package.

下載後,按照以下步驟將包添加到專案中。

  • 從方案瀏覽器窗口右鍵點擊專案。
  • 然後選擇 引用 選項並瀏覽已下載引用的位置。
  • 接下來,單擊確定添加引用。

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;
    }
}
Imports System
Imports System.Collections.Generic
Imports System.Text
Imports IronPdf

Friend Class Program
	Shared Sub Main()
		' Create an instance of ChromePdfRenderer
		Dim renderer = New IronPdf.ChromePdfRenderer()

		' Render the HTML as PDF and save it as Test.pdf
		renderer.RenderHtmlAsPdf(BuildTemplate()).SaveAs("Test.pdf")
	End Sub

	''' <summary>
	''' Builds an HTML template string using StringBuilder
	''' </summary>
	''' <returns>HTML string representation of a table</returns>
	Private Shared Function BuildTemplate() As String
		Dim 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
		For Each item In GetData()
			builder.Append("<tr>")
			builder.Append("<td>")
			builder.Append(item.ToString())
			builder.Append("</td>")
			builder.Append("</tr>")
		Next item

		builder.Append("</table>")
		Return builder.ToString()
	End Function

	''' <summary>
	''' Provides a list of data representing different members of the cat family
	''' </summary>
	''' <returns>List of strings</returns>
	Private Shared Function GetData() As List(Of String)
		Dim data As New List(Of String) From {"Lion", "Tiger", "Cat", "Cheetah", "Lynx"}

		Return data
	End Function
End Class
$vbLabelText   $csharpLabel

在上述代碼中:

  • 首先,我們創建 IronPDF ChromePdfRenderer 類的實例來訪問 PDF 創建功能。
  • 接下來,我們調用 RenderHtmlAsPdf,傳遞由 BuildTemplate 方法構建的 HTML 字串。 此方法將 HTML 轉換為 PDF。
  • BuildTemplate 方法使用 StringBuilder 構建一個用數據填充的 HTML 表格。
  • GetData 返回表示 '貓科家族' 的字串列表,這些字串填充 HTML 表格的行。

下面是從上述代碼生成的樣本 PDF 文件,僅使用給定範本少量行代碼就生成了該文件。

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

可以使用任何類型的 HTML 標籤創建範本,這樣可以幫助用戶生成用戶表單、收據等,使用樣本範本但不同數據。

It is possible to use the method RenderUrlAsPdf or RenderHtmlFileAsPdf to generate PDF files from different sources. 前一種方法接受到網頁的 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”並點擊安裝,或使用套件管理器控制台和命令Install-Package IronPdf

IronPDF在將檔案轉換為PDF時能否處理複雜的HTML5和JavaScript?

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

在 C# 中,使用範本產生 PDF 有哪些常見用途?

在 C# 中,使用範本產生 PDF 的常見用途包括建立發票、報表和表單。 IronPDF 可以將填充資料的動態 HTML 範本轉換為專業美觀的 PDF 文檔,從而實現這些流程的自動化。

IronPDF 相容於 ASP.NET 和 Windows Forms 嗎?

是的,IronPDF 與各種 .NET Framework 專案類型相容,包括 ASP.NET 和 Windows Forms,使其能夠靈活應用於不同的應用程式開發環境。

如何建立一個新的 Visual Studio 專案來使用 IronPDF 產生 PDF 檔案?

若要建立新的 Visual Studio 專案來使用 IronPDF,請開啟 Visual Studio,選擇“新專案”,選擇“控制台應用程式”,指定專案名稱和位置,選擇 .NET Framework,然後按一下“建立”。之後,透過 NuGet 安裝 IronPDF。

IronPDF能否從有登入表單的安全網頁產生PDF檔案?

是的,IronPDF 可以從需要透過 HTML 登入表單進行驗證的網頁產生 PDF,讓您能夠有效地處理安全可靠的 Web 內容。

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 機器人,結合科技與創意的樂趣。