使用 IRONPDF

C# 編程生成 PDF 文件

已更新 2024年10月2日
分享:

對於開發人員來說,有許多情況需要程式化地創建 PDF 文件。您可能需要在軟體中程式化地生成 PDF 報告和其他 PDF 文件。從頭開始編寫您的代碼和功能將會是漫長、昂貴且低效的。這就是 IronPDF 的用武之地。儘管在 .NET 中程式化地創建 PDF 文件可能會令人沮喪,但幸運的是,現在有一個解決方案使這變得更加可管理。

教程涵蓋的主題

在本教程中,我們將涵蓋以下主題:

程式化建立 PDF 文件的步驟

  • 步驟 1:創建一個 C# 專案
  • 步驟 2:安裝 IronPdf 函式庫

    • 方法 1:NuGet 套件管理器

    • 方法 2:NuGet 套件管理器控制台
  • 方法 3:使用 DLL 文件
  • 步驟 3:添加 IronPdf 命名空間
  • 步驟 4:程式化創建 PDF 文件

    • 4.1:使用 HTML 字串程式化創建 PDF 文件

    • 4.2:使用 HTML 文件程式化創建 PDF 文件

    • 4.3:使用 URL 程式化創建 PDF 文件
  • 4.4:帶格式化的程式化創建 PDF 文件
  • 總結

IronPDF

IronPDF 是一款 C# PDF程式庫 它提供了一組類別,可以用來以程式方式創建PDF檔案。這些類別位於 IronPdf 程式集中,並設計為易於與任何 .NET 語言(包括 C#、VB.NET、F# 等)一起使用。該庫提供了許多功能,用於創建PDF文件、操作現有的PDF文件和閱讀PDF文件。

目前版本的 IronPDF 庫支持以下功能:

讓我們從如何使用 IronPDF 庫開始 建立PDF 程式化地。

程式化創建 PDF 文件的步驟

本文將使用 Console 應用程式範本進行演示。您可以根據需求和選擇使用任何範本。您也可以使用您現有的專案,在其中添加 PDF 文件生成工具。

步驟1:建立 C# 專案

本教程將使用 Visual Studio 和 C# 程式語言來建立我們的專案。您應該具備基本的 HTML 和 C# 語言知識。也建議您熟悉一下 Visual Studio。

我們將探討使用 IronPDF C# 庫以程式化方式創建 PDF 文件的多種方法。首先,讓我們建立一個 C# 專案。

  • 打開 Visual Studio。
  • 新建一個 C# 專案或打開一個現有專案。
  • 給專案命名。
  • 選擇 .Net Core >= 3.1,因為 3.1 受支持並可在所有設備上運行。建議使用最新版本的 .Net Core。

現在讓我們進入步驟2。

步驟 2:安裝 IronPDF 函式庫

在繼續之前,我們應該在專案中安裝 IronPdf 函式庫。我們可以通過多種方式來完成這項操作。

方法一:NuGet 套件管理器

我們可以從 NuGet 套件管理器安裝 IronPdf C# 程式庫。點擊 工具 > NuGet 套件管理器 > 管理 NuGet 套件解決方案,將會打開 NuGet 套件管理器解決方案資源管理器。

C# 程式化建立 PDF 文件,圖1:打開 NuGet 套件管理器

開啟 NuGet 套件管理員

點擊瀏覽,並在搜尋欄中輸入 IronPdf。會出現以下的結果。選擇 IronPdf 並點擊安裝按鈕,庫將開始安裝。

使用C# 程式化建立PDF檔案,圖2:搜尋並安裝 IronPDF 套件

搜尋並安裝 IronPdf 套件

方法 2:NuGet 套件管理器主控台

我們可以使用 NuGet 套件管理器主控台輕鬆安裝我們的庫。 安裝時不需要任何管理權限。 您可以使用 NuGet 命令將 IronPdf 庫安裝到您的專案中。

Install-Package IronPdf

C# 程式化創建 PDF 檔案,圖 3:透過命令行安裝 IronPdf 套件

透過命令行安裝 IronPDF 套件

方法三:使用 DLL 檔案

第三種方法是在您的專案中使用 IronPDF,是從 IronPDF 庫中添加 DLL 檔案。您可以 下載DLL檔案.

  • 下載 DLL 壓縮文件。 將其解壓縮到特定文件夾中。
  • 在 Visual Studio 中打開一個項目。 在解決方案資源管理器中,右鍵單擊引用並瀏覽 IronPDF DLL 文件。

訪問更多 詳細安裝指南.

第三步:添加 IronPdf 命名空間

現在將 IronPdf 命名空間添加到您的程式中。您需要在程式碼的頂部添加以下這行程式碼。

using IronPdf

這將使您能夠訪問 IronPDF 的功能。您必須在每個希望使用 IronPDF 特性的檔案中添加這行程式碼。

第四步:以程式方式創建 PDF 文件

我們將探討由 IronPDF 提供的多種創建 PDF 文件的方法。我們將看到使用簡單的函數來創建 PDF 文件是多麼容易。讓我們從使用 HTML 字串創建 PDF 開始。

4.1. 使用 HTML 字符串以程式方式建立 PDF

在 IronPDF 庫中,HTML 用於樣式設計。您必須具備基本的 HTML 語言知識才能使用 IronPDF 庫生成 PDF 文件。

IronPDF 庫使處理 HTML 字符串並將其轉換為 PDF 格式變得非常容易。讓我們看看如何使用程式碼來完成它。

using IronPdf;

IronPdf.License.LicenseKey = "YourLicenseKey";

string htmlString = "<h1> Generated PDF File!</h1> <p> This file is generated by IronPDF library from HTML String!</p> <p>It is great Library to manipulate PDF Files.</p>";

var renderer = new ChromePdfRenderer();
renderer.RenderHtmlAsPdf(htmlString).SaveAs("PDF from HTML String.pdf");
using IronPdf;

IronPdf.License.LicenseKey = "YourLicenseKey";

string htmlString = "<h1> Generated PDF File!</h1> <p> This file is generated by IronPDF library from HTML String!</p> <p>It is great Library to manipulate PDF Files.</p>";

var renderer = new ChromePdfRenderer();
renderer.RenderHtmlAsPdf(htmlString).SaveAs("PDF from HTML String.pdf");
Imports IronPdf

IronPdf.License.LicenseKey = "YourLicenseKey"

Dim htmlString As String = "<h1> Generated PDF File!</h1> <p> This file is generated by IronPDF library from HTML String!</p> <p>It is great Library to manipulate PDF Files.</p>"

Dim renderer = New ChromePdfRenderer()
renderer.RenderHtmlAsPdf(htmlString).SaveAs("PDF from HTML String.pdf")
VB   C#

這段程式碼將生成一個包含存儲在 htmlString 變量中的內容的 PDF 檔案。在此程式碼範例中, RenderHtmlAsPdf ```Chinese (Traditional) 函數已被使用。此函數執行將HTML字符串轉換為PDF文檔的操作。

為了使用IronPDF庫生成PDF文件,您必須熟悉HTML標籤。我們使用SaveAs函數來保存輸出的PDF文件。您可以在下方查看輸出的PDF文件。

輸出:


![C# 程式化建立PDF檔案,圖4: PDF檔案輸出](/static-assets/pdf/blog/csharp-create-pdf-file-programmatically/csharp-create-pdf-file-programmatically-4.webp)

**PDF 文件輸出**

#### 4.2. 使用 HTML 檔案以程式化方式創建 PDF

IronPDF 套件提供了一個極佳的功能,可以從 HTML 檔案創建 PDF 檔案。IronPDF 直接將 HTML 檔案中的所有內容,包括圖像、CSS、表單等,轉換為 PDF 文件。不需要其他任何庫或函數進行進一步處理。IronPDF 直接將任何 HTML 檔案轉換為 PDF 檔案。

讓我們來看看一些從 HTML 檔案創建 PDF 檔案的範例代碼:

```cs
using IronPdf;

IronPdf.License.LicenseKey = "YourLicenseKey";

var Renderer = new ChromePdfRenderer();
var PDF = Renderer.RenderHtmlFileAsPdf("IronFile.html").SaveAs("IronPDF file.pdf");

我們使用 RenderHtmlFileAsPdf 從 HTML 文件創建 PDF 的函數。這個函數是在給定的代碼示例中最重要的函數。您可以在函數參數中給出 HTML 文件的位置,或將 HTML 文件放在源代碼的 bin 文件夾中,這樣您只需在 RenderHtmlFileAsPdf 函數的參數中輸入帶擴展名的文件名稱。運行此代碼時,輸出的 PDF 文件將保存在 bin 文件夾中。SaveAs 函數將幫助您保存創建的 PDF 文件。

4.3. 使用 URL 程式化地創建 PDF

有時候我們需要在程式中程式化地創建一個 URL 的 PDF 檔案。如果我們從頭開始編寫程式碼,這可能是一項非常技術性的任務。IronPDF 為我們提供了一個非常出色的功能來通過 URL 創建 PDF 檔案。您可以使用任何 URL 來創建 PDF。

讓我們來看看如何做到這一點:

using IronPdf;

IronPdf.License.LicenseKey = "YourLicenseKey";

var Renderer = new ChromePdfRenderer();
var PDF = Renderer.RenderUrlAsPdf("https://ironpdf.com/blog/using-ironpdf/csharp-generate-pdf-tutorial/").SaveAs("IronPDF Generate PDF.pdf");
using IronPdf;

IronPdf.License.LicenseKey = "YourLicenseKey";

var Renderer = new ChromePdfRenderer();
var PDF = Renderer.RenderUrlAsPdf("https://ironpdf.com/blog/using-ironpdf/csharp-generate-pdf-tutorial/").SaveAs("IronPDF Generate PDF.pdf");
Imports IronPdf

IronPdf.License.LicenseKey = "YourLicenseKey"

Dim Renderer = New ChromePdfRenderer()
Dim PDF = Renderer.RenderUrlAsPdf("https://ironpdf.com/blog/using-ironpdf/csharp-generate-pdf-tutorial/").SaveAs("IronPDF Generate PDF.pdf")
VB   C#

上面的程式碼將會將給定的 URL 參數生成 PDF RenderUrlAsPdf 此函數會創建 URL 的 PDF。如果您嘗試從頭開始做這件事可能會非常複雜,所以 IronPDF 為開發者提供了一個簡單的過程來將任何 URL 轉換為 PDF。SaveAs 函數用於將輸出文件保存在 bin 文件夾中。要將文件格式設置為 PDF,您必須在 SaveAs 函數的文件名參數中指定 .pdf 擴展名。您可以在項目文件夾中看到 bin 文件夾。輸出顯示如下。

輸出:

C# 程式化建立 PDF 文件,圖 5:從 URL 建立 PDF 文件

從網址建立 PDF 檔案

4.4. 使用ASP.NET Web Forms以程式方式建立PDF

ASP.NET是一個伺服器端的程式框架,擴展了HTML的功能,支援在瀏覽器中進行網頁開發。ASP.NET頁面是用HTML、CSS和JavaScript編寫,並且可以編碼為ASPX檔案。 (.aspx)ASP.NET 網頁表單創建用户友好的、功能豐富的網站、網上銀行、內聯網和會計系統。

我們將使用 IronPDF 庫來將 ASP.NET 網頁表單轉換為 PDF。最初呈現為網頁,我們將其轉換為 PDF 以在網絡瀏覽器中查看和下載。我們將使用 IronPDF 的 AspxToPdf 類來完成轉換。

我們來看看怎麼做:

  1. 在 Visual Studio 中創建一個 ASP.NET 網頁表單項目。推薦使用最新版的 Visual Studio。

  2. 使用 NuGet 套件管理器根據您的選擇安裝 DLL 文件的 IronPDF 庫。您也可以使用 NuGet 套件管理器控制台來安裝它。

  3. 現在,打開您想轉換為 PDF 文件的任意 apex 頁面的代碼。這裡我們將創建項目中 Default aspx 頁面的 PDF。

C# 程式生成 PDF 檔案,圖 6:Visual Studio 中的 Web 表單專案結構

在 Visual Studio 中的 Web 表單項目結構

  1. 打開 Default.aspx.cs 文件。將 IronPdf 命名空間添加到文件中,這是最重要的一行。

using IronPdf;

  1. 在 Page_Load 函數中寫下以下代碼行,以創建頁面的 PDF 文件。

AspxToPdf.RenderThisPageAsPdf(AspxToPdf.FileBehavior.InBrowser);`

就這樣! 已建立了Aspx網頁的PDF檔案。當您運行項目時,您將在瀏覽器中看到該網頁的PDF。其結果與按Ctrl+P創建PDF時相同。在此處,您不需要按Ctrl+P即可創建aspx文件的PDF。

這是在伺服器端完成的。在此代碼中,我們使用了IronPDF的AspxToPdf類。RenderThisPageAsPdf函數創建Aspx網頁的PDF。

上述代碼在瀏覽器中顯示PDF文件。我們可以通過在Page_Load函數中添加以下代碼行,將PDF文件直接下載到我們的系統中:

AspxToPdf.RenderThisPageAsPdf(IronPdf.AspxToPdf.FileBehavior.Attachment)此代碼將下載系統中 aspx 網頁的 PDF 檔案。我們還可以設置 Aspx PDF 檔案的名稱。有多種選項可供修改和格式設定,例如頁眉、頁腳、打印選項、質量等。欲了解更多詳情,請訪問此 連結.

C# 程式化建立 PDF 檔案,圖 7:從伺服器端渲染 PDF 檔案的輸出

從伺服器端生成 PDF 文件的輸出

探索最新的微軟技術 Blazor應用程式用於創建PDF檔案

4.4. 程式化地創建具有格式的PDF檔

在創建PDF檔時,大多數問題都出現在PDF文件的格式化過程中。程式化地格式化PDF並不容易。但是,我們現在有了一個解決方案,即IronPDF。IronPDF提供了各種格式選項,允許我們自訂所創建的PDF文件。它為我們提供了添加頁眉、頁腳、邊距和許多其他格式選項的方法。

使用IronPDF讓我們可以設定頁面方向、頁面大小和標題。它還支援更改字體大小、字體顏色、字體類型和其他與字體相關的操作。您可以添加帶有分隔線和自訂文本的頁腳和頁眉。讓我們來看看如何使用IronPDF來自訂PDF文件。

  • 創建一個C#控制台專案。根據需求,您也可以創建GUI專案,或者打開現有專案。
  • 使用NuGet套件管理器或DLL文件安裝IronPDF庫。
  • 在代碼文件頂部添加IronPDF命名空間。

我們的應用程式設置現在已經完成。接下來,將以下代碼添加到PDF文件中:

using IronPdf;

IronPdf.License.LicenseKey = "YourLicenseKey";

ChromePdfRenderer Renderer = new IronPdf.ChromePdfRenderer();

Renderer.RenderingOptions.PaperOrientation = IronPdf.Rendering.PdfPaperOrientation.Portrait;
Renderer.RenderingOptions.SetCustomPaperSizeInInches(14, 40);
Renderer.RenderingOptions.PrintHtmlBackgrounds = true;
Renderer.RenderingOptions.Title = "PDF Generated";
Renderer.RenderingOptions.Zoom = 100;

//Margin Setting
Renderer.RenderingOptions.MarginTop = 40;  
Renderer.RenderingOptions.MarginLeft = 20;  
Renderer.RenderingOptions.MarginRight = 20;  
Renderer.RenderingOptions.MarginBottom = 40;  

Renderer.RenderingOptions.FirstPageNumber = 1; 

//Header Setting
Renderer.RenderingOptions.TextHeader.DrawDividerLine = true;
Renderer.RenderingOptions.TextHeader.CenterText = "Header!";
Renderer.RenderingOptions.TextHeader.Font = IronSoftware.Drawing.FontTypes.Helvetica;

//Footer Setting
Renderer.RenderingOptions.TextFooter.DrawDividerLine = true;
Renderer.RenderingOptions.TextFooter.Font = IronSoftware.Drawing.FontTypes.Arial;
Renderer.RenderingOptions.TextFooter.FontSize = 10;
Renderer.RenderingOptions.TextFooter.LeftText = "{date} {time}";
Renderer.RenderingOptions.TextFooter.RightText = "{page} of {total-pages}"; 

string htmlStr = "<h1>PDF Formatting!</h1><h3>Functions and properties for formatting </h3> <p>IronPDF the best ever library for PDF operations and formatting. </p>";
Renderer.RenderHtmlAsPdf(htmlStr).SaveAs("PDF-Formatted.pdf");
using IronPdf;

IronPdf.License.LicenseKey = "YourLicenseKey";

ChromePdfRenderer Renderer = new IronPdf.ChromePdfRenderer();

Renderer.RenderingOptions.PaperOrientation = IronPdf.Rendering.PdfPaperOrientation.Portrait;
Renderer.RenderingOptions.SetCustomPaperSizeInInches(14, 40);
Renderer.RenderingOptions.PrintHtmlBackgrounds = true;
Renderer.RenderingOptions.Title = "PDF Generated";
Renderer.RenderingOptions.Zoom = 100;

//Margin Setting
Renderer.RenderingOptions.MarginTop = 40;  
Renderer.RenderingOptions.MarginLeft = 20;  
Renderer.RenderingOptions.MarginRight = 20;  
Renderer.RenderingOptions.MarginBottom = 40;  

Renderer.RenderingOptions.FirstPageNumber = 1; 

//Header Setting
Renderer.RenderingOptions.TextHeader.DrawDividerLine = true;
Renderer.RenderingOptions.TextHeader.CenterText = "Header!";
Renderer.RenderingOptions.TextHeader.Font = IronSoftware.Drawing.FontTypes.Helvetica;

//Footer Setting
Renderer.RenderingOptions.TextFooter.DrawDividerLine = true;
Renderer.RenderingOptions.TextFooter.Font = IronSoftware.Drawing.FontTypes.Arial;
Renderer.RenderingOptions.TextFooter.FontSize = 10;
Renderer.RenderingOptions.TextFooter.LeftText = "{date} {time}";
Renderer.RenderingOptions.TextFooter.RightText = "{page} of {total-pages}"; 

string htmlStr = "<h1>PDF Formatting!</h1><h3>Functions and properties for formatting </h3> <p>IronPDF the best ever library for PDF operations and formatting. </p>";
Renderer.RenderHtmlAsPdf(htmlStr).SaveAs("PDF-Formatted.pdf");
Imports IronPdf

IronPdf.License.LicenseKey = "YourLicenseKey"

Dim Renderer As ChromePdfRenderer = New IronPdf.ChromePdfRenderer()

Renderer.RenderingOptions.PaperOrientation = IronPdf.Rendering.PdfPaperOrientation.Portrait
Renderer.RenderingOptions.SetCustomPaperSizeInInches(14, 40)
Renderer.RenderingOptions.PrintHtmlBackgrounds = True
Renderer.RenderingOptions.Title = "PDF Generated"
Renderer.RenderingOptions.Zoom = 100

'Margin Setting
Renderer.RenderingOptions.MarginTop = 40
Renderer.RenderingOptions.MarginLeft = 20
Renderer.RenderingOptions.MarginRight = 20
Renderer.RenderingOptions.MarginBottom = 40

Renderer.RenderingOptions.FirstPageNumber = 1

'Header Setting
Renderer.RenderingOptions.TextHeader.DrawDividerLine = True
Renderer.RenderingOptions.TextHeader.CenterText = "Header!"
Renderer.RenderingOptions.TextHeader.Font = IronSoftware.Drawing.FontTypes.Helvetica

'Footer Setting
Renderer.RenderingOptions.TextFooter.DrawDividerLine = True
Renderer.RenderingOptions.TextFooter.Font = IronSoftware.Drawing.FontTypes.Arial
Renderer.RenderingOptions.TextFooter.FontSize = 10
Renderer.RenderingOptions.TextFooter.LeftText = "{date} {time}"
Renderer.RenderingOptions.TextFooter.RightText = "{page} of {total-pages}"

Dim htmlStr As String = "<h1>PDF Formatting!</h1><h3>Functions and properties for formatting </h3> <p>IronPDF the best ever library for PDF operations and formatting. </p>"
Renderer.RenderHtmlAsPdf(htmlStr).SaveAs("PDF-Formatted.pdf")
VB   C#

這段程式碼正在格式化 PDF 檔案。 RenderingOptions 是設置不同屬性以創建 PDF 文件的主要工具。

  • Renderer.RenderingOptions.TextHeader
  • 此代碼行用於設置 PDF 文件的頁眉。您可以使用此代碼行訪問頁眉的更多屬性。
  • Renderer.RenderingOptions.TextFooter
  • 此代碼行設置頁腳屬性,如文本、頁腳的左右側、字體大小等許多屬性。
  • Renderer.RenderingOptions.PaperOrientation
  • 此代碼行允許用戶設置 PDF 文件的頁面方向。它可以被指定為橫向或縱向。
  • Renderer.RenderingOptions.Title

    • 我們可以使用此行設置 PDF 文件的標題。

在最後幾行中,我們使用 RenderHtmlAsPdf 函數來創建 HTML 字符串的 PDF,但我們可以使用一個 將 HTML 文件轉換為 PDF 在保持當前格式的同時。這是IronPDF的一個非常方便的功能,給你完全的自由去自定義與PDF 文件相關的一切。

輸出:

C# 程式化建立 PDF 檔案,圖 8:具有格式支援的 PDF 輸出

支援格式化的 PDF 輸出

總結

本教程展示了如何使用IronPDF C#庫以程式化方式創建PDF。我們已經看到如何從HTML字符串、HTML文件、網址和ASP.NET網頁表單創建PDF文件。使用IronPDF庫功能,PDF文件的操作和格式化變得非常簡單。只需要幾行代碼就可以程式化創建和格式化PDF文件。IronPDF非常適合需要在軟體中操作PDF文件的開發人員和公司。

您可以嘗試免費版本來測試,還有 免費試用金鑰 不需要任何信用卡付款。此外, 目前特別優惠 讓您以兩個產品的價格獲得由 IronPDF 提供的九個產品。

< 上一頁
如何建立C# PDF生成器
下一個 >
如何使用 C# 開啟 PDF 文件

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

免費 NuGet 下載 總下載次數: 10,993,239 查看許可證 >