使用 IRONPDF

C# 編程生成 PDF 文件

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

對於開發人員來說,存在許多需要以程式碼方式生成 PDF 檔案的情境。 您可能需要在您的軟體中以程式方式生成 PDF 報告和其他 PDF 文件。 從頭開始撰寫你的代碼和函數將會耗時、昂貴且效率低下。 這就是 IronPDF 派上用場的地方。 雖然在 .NET 中以程式方式創建 PDF 文件可能令人沮喪,但幸運的是,現在有了一個解決方案,使其變得更加易於管理。

教程涵蓋的主題

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

以程式創建 PDF 文件的步驟

  • 步驟 1:建立一個 C# 專案
  • 第 2 步:安裝 IronPdf

    • 方法一:NuGet 套件管理員

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

    • 4.1:使用 HTML 字串以程式化方式建立 PDF 文件

    • 4.2:使用 HTML 文件以程式化方式建立 PDF 文件

    • 4.3:使用 URL 程式化建立 PDF 文件
  • 4.4:以程式方式建立具格式的PDF文件
  • 摘要

IronPDF

IronPDF 是一個適用於 .NET 開發者的 C# PDF 庫提供一組類別,可以用程式化方式建立 PDF 文件。 這些類別位於 IronPdf 程式集內,設計上易於與任何 .NET 語言(包括 C#、VB.NET、F# 等)一起使用。該庫提供多種功能,用於創建 PDF 文件、操作現有 PDF 以及閱讀 PDF。

IronPDF 程式庫的當前版本支援以下功能:

以程式方式建立 PDF 檔案的步驟

本文將使用主控台應用程式模板進行此演示。 您可以根據您的需求和選擇來使用這些工具。您也可以使用現有的專案,然後在其中添加生成 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 套件方案。 這將打開 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 的詳細安裝指南.

步驟 3:添加 IronPdf 命名空間

現在將 IronPdf 命名空間添加到您的程式中。 您必須在代碼的頂部添加給定的代碼行。

using IronPdf

這將使您能夠訪問 IronPDF 的功能。 您必須在每個希望使用IronPDF功能的文件中添加這行代碼。

步驟 4:以程式方式建立 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函數已被使用。 此功能將 HTML 字串轉換為 PDF 文件。

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

輸出:

C# 程式化建立PDF檔案,圖4: PDF檔案輸出

PDF 文件輸出

4.2. 使用 HTML 文件以程式方式建立 PDF

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

讓我們看看一些將 HTML 文件生成 PDF 文件的範例代碼:

using IronPdf;

IronPdf.License.LicenseKey = "YourLicenseKey";

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

IronPdf.License.LicenseKey = "YourLicenseKey";

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

IronPdf.License.LicenseKey = "YourLicenseKey"

Dim Renderer = New ChromePdfRenderer()
Dim PDF = Renderer.RenderHtmlFileAsPdf("IronFile.html").SaveAs("IronPDF file.pdf")
VB   C#

我們使用RenderHtmlFileAsPdf從 HTML 檔案建立 PDF 的函數。 此功能是給定程式碼範例中使用的最重要功能。 您可以在函數參數中指定 HTML 檔案的位置,或將 HTML 檔案放置在原始碼的 bin 資料夾中,如此一來,在 RenderHtmlFileAsPdf 函數的參數中只需要填寫帶有擴展名的檔案名稱即可。 當您運行此程式碼時,輸出 PDF 檔案將會被保存到 bin 資料夾中。 SaveAs 函數將幫助您保存創建的 PDF 文件。

4.3. 使用URLs以程式化方式建立PDFs

有時候我們需要在程式中以編程方式創建一個 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 參數生成 PDFRenderUrlAsPdf函數。 此功能會將URL製作成PDF。 如果從頭開始嘗試,這本來會是一項非常複雜的任務,因此IronPDF為開發人員提供了一個簡單的流程來將任何URL轉換為PDF。 SaveAs 函式用於將輸出文件保存到 bin 資料夾中。 若要將文件格式設置為 PDF,您必須在 SaveAs 函數中使用文件名參數指定 .pdf 擴展名。 您可以在專案資料夾中看到 bin 資料夾。 輸出顯示如下。

輸出:

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

從 URL 建立 PDF 文件

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

ASP.NET 是一種伺服器端程式設計框架,能擴展 HTML 的功能並支援在瀏覽器中的網頁開發。 ASP.NET 頁面是用 HTML、CSS 和 JavaScript 編寫的,並且可以編碼為 ASPX 文件。(.aspx). ASP.NET Web Forms 創建使用者友好的多功能網站、網上銀行、內聯網和會計系統。

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

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

  1. 在 Visual Studio 中建立一個 ASP.NET 網頁表單專案。 建議使用最新版本的 Visual Studio。

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

  3. 現在,打開您想轉換為 PDF 文件的任何頂級網頁程式碼。在這裡,我們將為專案的預設 aspx 頁面建立 PDF。

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

    Visual Studio 中的 Web 表單專案結構

  4. 打開 Default.aspx.cs 檔案。將 IronPdf 命名空間新增到檔案中,這是最重要的一行。

    using IronPdf;

  5. 在 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 文件的名稱。對於修改和格式化,有多種選擇,例如標題、頁腳、列印選項、質量等。有關更多詳細資訊,請造訪此全面的 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 文件、URL 和 ASP.NET 網頁表單創建 PDF 文件。 使用 IronPDF 函式庫,PDF 檔案的操作和格式化變得非常簡單。 只需要幾行程式碼即可以程式化方式創建和格式化 PDF 文件。 IronPDF 非常適合需要在其軟體中操作 PDF 文件的開發人員和公司使用。

您可以試用免費版本進行測試,並且有提供免費試用金鑰不需要任何信用卡支付。 此外,目前的特惠活動讓您可以以兩款產品的價格獲得 IronPDF 的五款產品。.

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

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

免費 NuGet 下載 總下載次數: 11,622,374 查看許可證 >