使用IRON SUITE

HTML 轉 PDF C# - 使用 IronPDF 的完整指南

2025年4月9日
分享:

介紹

在當今的數位時代,將 HTML 轉換為 PDF 檔案的需求比以往任何時候都更為重要。 無論您是生成報告、發票,還是僅僅存檔網頁內容,將HTML轉換為PDF都是一個實用的解決方案。 IronPDF 是一個強大函式庫,使此過程簡化,讓開發者輕鬆地從 HTML 內容創建高品質的 PDF 文件

如何將 HTML 轉換為 PDF C

  1. 創建一個新的 Visual Studio 專案。

  2. 從 NuGet 套件管理器添加 IronPDF 庫。

  3. 將 HTML 字串轉換為 PDF 檔案。

  4. 添加頁首和頁尾。

  5. 包含外部樣式表和腳本。

IronPDF 介紹

IronPDF 是一個 .NET 函式庫,可以讓開發者輕鬆地將 HTML 轉換為 PDF。 它支持多種功能,包括 CSS、JavaScript,甚至嵌入式圖像。 使用 IronPDF,您可以創建外觀與您的 HTML 網頁完全相同的 PDF,確保格式之間的無縫銜接。 這個程式庫對於需要即時生成動態 PDF 文件的網路應用程式特別有用。

IronPDF 允許開發人員將 PDF 功能無縫整合到 .NET 應用程式中,而無需手動管理 PDF 檔案結構。 IronPDF 利用 基於 Chrome 的渲染引擎 將 HTML 頁面(包括複雜的 CSS、JavaScript 和圖像)轉換為結構良好的 PDF 文件。 它可以用於生成報告、發票、電子書或任何需要以 PDF 格式呈現的文件。

IronPDF 非常多功能,不僅可以呈現 PDF,還提供廣泛的 PDF 操作選項,例如編輯、表單處理、加密等。

IronPDF 的主要功能

  1. HTML 轉換為 PDF

    • HTML 渲染IronPDF 可以將 HTML 文件或網頁(包括帶有 CSS、圖像和 JavaScript 的 HTML)直接轉換為 PDF 文件。 這非常適合從動態網頁內容生成 PDF。

    • 支持現代 HTML/CSS:IronPDF 處理現代的 HTML5、CSS3 和 JavaScript,確保您的基於網頁的內容準確生成 PDF,並保留其佈局、字體和互動元素。

    • 高級渲染:它使用 Chrome 的渲染引擎(透過 Chromium)進行精確、高品質的 PDF 生成,使其比許多其他 HTML-to-PDF 函式庫更可靠。
    • 網站網址轉PDFIronPDF 可以將網站的字串網址作為輸入並轉換為PDF。
  2. 自訂頁首和頁尾

    • IronPDF 允許開發者向 PDF 文件添加自訂的頁眉和頁腳,其中可以包含動態內容,例如頁碼、文件標題或自訂文本。
    • 頁眉和頁腳可以新增到單個頁面,或者作為整個文件中的一致元素。
  3. PDF 中的 JavaScript 支援

    • IronPDF 在生成 PDF 之前,允許在 HTML 內容中執行 JavaScript。 這允許動態內容渲染,例如表單計算或在生成的PDF中提供互動性。
    • JavaScript 在從動態網頁創建 PDF 或生成需要客戶端邏輯的報告時非常有用。
  4. 編輯現有 PDF

    • IronPDF 提供編輯現有 PDF 的功能。 您可以修改文字、圖像,並向現有的 PDF 文件添加註釋。 此功能對於在 PDF 文件中添加水印、簽名或更新內容非常有用。
    • 文本提取和修改允許您以編程方式操縱 PDF 文件中的內容。
  5. 合併及分割PDF

    • IronPDF 允許您將多個 PDF 文件合併成一個文件,或將較大的 PDF 拆分成較小的文件。 這非常適合需要合併或拆分文件以使其更易於管理的工作流程。
  6. 支援互動表單

    • 您可以使用 IronPDF 創建、填寫及處理 PDF 表單。 它提供對互動式表單(如文本字段、複選框和單選按鈕)的全面支持,並允許您用數據預填表單。
    • IronPDF 也可以從現有的 PDF 中提取表單數據,使得以程式方式讀取和處理表單數據變得簡單。
  7. 頁面操作

    • IronPDF 提供多種方法來操作 PDF 文檔中的各個頁面,例如旋轉頁面、刪除頁面或重新排序它們。 這有助於自訂最終文件的結構。
    • 您也可以將新頁面添加到現有的 PDF 中,或刪除不需要的頁面。
  8. 安全性和加密

    • IronPDF 可以對 PDF 檔案應用密碼保護和加密,確保您的文件安全無虞。 您可以設定使用者權限,例如防止列印、複製或編輯 PDF。
    • 數位簽名也可以新增到 PDF 中以驗證真實性,為機密文件提供一層安全保障。
  9. 浮水印和品牌設計

    • 使用 IronPDF 向 PDF 文件添加水印很容易。 您可以將文字或圖像作為浮水印疊加在頁面上,為您的文件提供防止未經授權的複製或分發的保護。
    • 此功能通常用於品牌塑造,當需要讓標誌或文字在文件的所有頁面上保持一致時。
    1. 文字與圖片擷取

      • IronPDF 允許從 PDF 文件中提取文字和圖像,使開發人員能夠提取數據以進行處理或重用。
    • 這對於需要分析 PDF 內容、從表單中提取信息或檢索圖像以供進一步使用的場景很有幫助。
    1. Unicode 和多語言支援

      • IronPDF 擁有強大的 Unicode 支援,這意味著它可以處理國際字符和字體,非常適合生成多語言的 PDF。
    • 它支持中文、阿拉伯語、俄語等語言,允許創建多語言 PDF 文件。
    1. 性能優化
    • IronPDF 經過性能優化,能夠處理大型 PDF 文件及高容量請求。 該庫確保即使在處理大型資料集或圖像時,PDF 生成仍然快速且高效。
    1. API 和開發者友好工具

      • IronPDF 具有全面且易於使用的 API。 開發人員可以透過使用簡單的方法調用來快速完成複雜的任務。
    • API 文件完整,使將 IronPDF 集成到任何 C# 或 .NET 應用程式中變得輕而易舉。
    1. 跨平台支援
    • IronPDF 是跨平台兼容的,這意味著它可以在 Windows 和 Linux 環境中使用,使您能夠在不同的操作系統中生成和操作 PDF。

步驟 1:創建一個新的 Visual Studio 專案

要開始,請打開 Visual Studio 並按如下所示創建一個新項目。

HTML to PDF C# - 使用 IronPDF 的完整指南:圖 1

從Pixabay添加上傳

或將圖片拖放到此處

新增圖片替代文字

選擇建立控制台應用程式。

HTML 轉 PDF C# - 使用 IronPDF 的完整指南:圖 2

從Pixabay添加上傳

或將圖片拖放到此處

新增圖片替代文字

提供專案名稱和位置。

HTML 轉 PDF C# - 完整指南(使用 IronPDF):圖 3

從Pixabay添加上傳

或將圖片拖放到此處

新增圖片替代文字

選擇 .NET 版本

HTML 轉 PDF C# - IronPDF 完整指南:圖 4

從Pixabay添加上傳

或將圖片拖放到此處

新增圖片替代文字

點擊「建立」按鈕以完成項目建立。

步驟 2:從 NuGet 套件管理器添加 IronPDF 庫

在開始將 HTML 轉換為 PDF 之前,您需要安裝 IronPDF 函式庫。 您可以使用 Visual Studio 中的 NuGet 套件管理器,或者在套件管理器主控台中運行以下命令來完成此操作:

Install-Package IronPdf
Install-Package IronPdf

此外,可以使用 Visual Studio 套件管理器安裝 IronPDF。

HTML 轉 PDF C# - 使用 IronPDF 的完整指南:圖示 5

從Pixabay添加上傳

或將圖片拖放到此處

新增圖片替代文字

步驟 3:將 HTML 字串轉換為 PDF 檔案

以下是 HTML 到 PDF 轉換器應用程式的程式碼。 在這裡,使用以字串格式表示的 HTML 代碼或 HTML 元素作為輸入並轉換為 PDF。 使用相同的步驟將 HTML 文件轉換為 PDF,並增加一個步驟從 HTML 文件中讀取內容。

class Program
{
    static void Main()
    {
        // Specify license key
        IronPdf.License.LicenseKey = "Your Key";
        // Create a new HtmlToPdf object
        var Renderer = new ChromePdfRenderer();
        // Define the HTML string to be converted, can use html document
        string htmlContent = "<html><body><h1>IronPDF: An Awesome PDF Generation Library</h1></body></html>";
        // Convert HTML string to a PDF document
        var document = Renderer.RenderHtmlAsPdf(htmlContent);
        // Save the PDF document to a file
        document.SaveAs("html2Pdf.pdf");
    }
}
class Program
{
    static void Main()
    {
        // Specify license key
        IronPdf.License.LicenseKey = "Your Key";
        // Create a new HtmlToPdf object
        var Renderer = new ChromePdfRenderer();
        // Define the HTML string to be converted, can use html document
        string htmlContent = "<html><body><h1>IronPDF: An Awesome PDF Generation Library</h1></body></html>";
        // Convert HTML string to a PDF document
        var document = Renderer.RenderHtmlAsPdf(htmlContent);
        // Save the PDF document to a file
        document.SaveAs("html2Pdf.pdf");
    }
}

程式碼片段說明

  • 許可證密鑰設置

    程式開始時通過設定IronPDF許可證金鑰以啟用該庫的全部功能。

  • 創建渲染器

    建立了一個 ChromePdfRenderer 的實例。 這是負責將 HTML 渲染成 PDF 文件的組件。 它基本上充當 HTML 內容與生成的 PDF 之間的橋樑。

  • HTML內容

    定義了一個字符串變數 htmlContent,其中包含您想要轉換為 PDF 的 HTML 代碼。 在這種情況下,這是一個帶有標題的簡單 HTML 結構。

  • HTML 轉換為 PDF

    使用 Renderer.RenderHtmlAsPdf() 方法與 HTML 字串來生成 PDF 文件。 此方法處理 HTML 內容並將其轉換為 PDF 格式。

  • 儲存 PDF

    生成的 PDF 文件使用 SaveAs() 方法保存到名为 "html2Pdf.pdf" 的文件中。 這會將新創建的 PDF 存儲在磁碟上。

輸出 PDF

HTML 轉 PDF C# - 使用 IronPDF 的完整指南:圖 6

從Pixabay添加上傳

或將圖片拖放到此處

新增圖片替代文字

步驟 4:添加頁首和頁尾

class Program
{
    static void Main()
    {
        IronPdf.License.LicenseKey = "your code";
        // Create a new HtmlToPdf object
        var Renderer = new ChromePdfRenderer();
        string htmlContent = "<html><body><h1>IronPDF: An Awesome PDF Generation Library</h1><h1>Report</h1><p>This is a sample report.</p></body></html>";
        string headerHtml = "<div style='text-align: right;'>Page {page} of {total-pages}</div>";
        string footerHtml = "<div style='text-align: center;'>Confidential</div>";
        // Convert the HTML content to a PDF document with headers and footers
        var pdfDocument = Renderer.RenderHtmlAsPdf(htmlContent);
        pdfDocument.AddHtmlHeadersAndFooters(new ChromePdfRenderOptions
        {
            HtmlHeader= new HtmlHeaderFooter() { HtmlFragment=headerHtml },
            HtmlFooter = new HtmlHeaderFooter() { HtmlFragment=footerHtml }
        });
        pdfDocument.SaveAs("report.pdf");
    }
}
class Program
{
    static void Main()
    {
        IronPdf.License.LicenseKey = "your code";
        // Create a new HtmlToPdf object
        var Renderer = new ChromePdfRenderer();
        string htmlContent = "<html><body><h1>IronPDF: An Awesome PDF Generation Library</h1><h1>Report</h1><p>This is a sample report.</p></body></html>";
        string headerHtml = "<div style='text-align: right;'>Page {page} of {total-pages}</div>";
        string footerHtml = "<div style='text-align: center;'>Confidential</div>";
        // Convert the HTML content to a PDF document with headers and footers
        var pdfDocument = Renderer.RenderHtmlAsPdf(htmlContent);
        pdfDocument.AddHtmlHeadersAndFooters(new ChromePdfRenderOptions
        {
            HtmlHeader= new HtmlHeaderFooter() { HtmlFragment=headerHtml },
            HtmlFooter = new HtmlHeaderFooter() { HtmlFragment=footerHtml }
        });
        pdfDocument.SaveAs("report.pdf");
    }
}

程式碼片段說明

  1. 許可證密鑰設定

    • 將 IronPdf.License.LicenseKey 設定為您的唯一 IronPDF 授權碼,以啟用該程式庫的完整功能。
  2. 創建 PDF 渲染器

    • 創建了一個 ChromePdfRenderer 實例,用於將 HTML 內容渲染為 PDF 格式。 這是 IronPDF 的渲染引擎的一部分。
  3. 定義 HTML 內容

    • 創建了一個簡單的 HTML 字串,其中包括標題(

      IronPDF: 一個出色的 PDF 生成庫)、報告標題(

      報告),以及一個示例報告段落。

  4. 定義頁首和頁尾 HTML

    • 指定自訂的標頭和頁尾 HTML 字串:

      • 頁首 包含格式為 "Page {page} of {total-pages}" 的頁碼,靠右對齊。
      • 頁腳包含中間對齊的文字 "Confidential" 於每頁。
  5. HTML 轉換為 PDF

    • 調用 RenderHtmlAsPdf() 方法將 HTML 內容轉換為 PDF 文件。
  6. 添加頁眉和頁腳

    • AddHtmlHeadersAndFooters() 方法在 pdfDocument 對象上被調用。 此方法將先前定義的頁首和頁尾添加到生成的PDF中。 ChromePdfRenderOptions 用於傳遞頁首和頁尾設置。
  7. 儲存 PDF

    • 最後,使用 SaveAs() 方法將生成的 PDF 儲存為檔名為 "report.pdf" 的檔案。

輸出 PDF

HTML 轉 PDF C# - 使用 IronPDF 的完整指南:圖 7

從Pixabay添加上傳

或將圖片拖放到此處

新增圖片替代文字

步驟 5:包含外部樣式表和腳本

class Program
{
    static void Main()
    {
        IronPdf.License.LicenseKey = "your key";        
        // Define the HTML content with links to external CSS and JS files
        string htmlContent = @"
            <html>
            <head>
                <link rel='stylesheet' type='text/css' href='styles.css'>
                <script src='script.js'></script>
            </head>
            <body>
                <h1>IronPDF: An Awesome PDF Generation Library</h1>
                <h1>Styled Content</h1>
                <p id='dynamic-text'>This content is styled using an external CSS file and JavaScript.</p>
            </body>
            </html>";
        var pdfDocument = Renderer.RenderHtmlAsPdf(htmlContent);
        pdfDocument.SaveAs("awesomeIronPDF_styled_content.pdf");
    }
}
class Program
{
    static void Main()
    {
        IronPdf.License.LicenseKey = "your key";        
        // Define the HTML content with links to external CSS and JS files
        string htmlContent = @"
            <html>
            <head>
                <link rel='stylesheet' type='text/css' href='styles.css'>
                <script src='script.js'></script>
            </head>
            <body>
                <h1>IronPDF: An Awesome PDF Generation Library</h1>
                <h1>Styled Content</h1>
                <p id='dynamic-text'>This content is styled using an external CSS file and JavaScript.</p>
            </body>
            </html>";
        var pdfDocument = Renderer.RenderHtmlAsPdf(htmlContent);
        pdfDocument.SaveAs("awesomeIronPDF_styled_content.pdf");
    }
}

style.css

/* styles.css */
body {
    font-family: Arial, sans-serif;
    margin: 20px;
}
h1 {
    color: #007BFF;
}
p {
    font-size: 14px;
    line-height: 1.6;
}
/* styles.css */
body {
    font-family: Arial, sans-serif;
    margin: 20px;
}
h1 {
    color: #007BFF;
}
p {
    font-size: 14px;
    line-height: 1.6;
}

script.js

// script.js
document.addEventListener('DOMContentLoaded', function() {
    var dynamicText = document.getElementById('dynamic-text');
    dynamicText.textContent = "This content has been modified by JavaScript.";
});
// script.js
document.addEventListener('DOMContentLoaded', function() {
    var dynamicText = document.getElementById('dynamic-text');
    dynamicText.textContent = "This content has been modified by JavaScript.";
});

程式碼說明

此代碼展示如何在 C# 中使用 IronPDF 從包含外部 CSS 和 JavaScript 文件鏈接的 HTML 內容生成 PDF。 它展示了如何創建具有樣式內容和動態行為(通過JavaScript)的PDF。

  1. 許可證密鑰設定

    • IronPdf.License.LicenseKey 設置為您獨特的 IronPDF 授權密鑰,允許訪問 IronPDF 庫的所有功能。
  2. 使用外部資源定義HTML內容

    • HTML 字串定義為:

      • 一個外部CSS文件的連結(styles.css)來樣式化內容。

      • 一個指向外部 JavaScript 文件(script.js)的連結,可以為內容添加動態功能。
    • HTML內容包含一個標題(

      IronPDF:一個很棒的PDF生成庫),一個副標題(

      樣式內容),以及一個帶有ID dynamic-text的段落(

      ),此段落由外部CSS設置樣式並可能被JavaScript修改。

  3. 將 HTML 渲染為 PDF

    • 使用 Renderer.RenderHtmlAsPdf() 方法可將包括連結 CSS 和 JavaScript 的 HTML 內容轉換為 PDF 文件。 請注意,IronPDF 可以處理外部資源,如 CSS 和 JavaScript,只要這些資源是可存取的,例如當文件位於本地或遠程託管時。
  4. 儲存 PDF

    • 生成的 PDF 文件使用 SaveAs() 方法保存为名为 "awesomeIronPDF_styled_content.pdf" 的文件。

筆記

  • 外部 CSS 和 JS 文件:為確保鏈接正常運作,styles.css 和 script.js 文件應能在程式運行的環境中存取。 如果文件是本地的,請確保它們位於正確的目錄中或提供文件的完整路徑。
  • PDF 中的 JavaScript:IronPDF 可以渲染使用 JavaScript 進行頁面行為的內容。 然而,重要的是要注意,JavaScript 在靜態 PDF 檔案中可能無法如預期般執行,因為 PDF 並不像網頁那樣具有動態性。 IronPDF 主要使用 JavaScript 在生成 PDF 之前渲染內容,因此通過 JavaScript 動態操作內容可能在 PDF 創建後不可用。

輸出 PDF

HTML 轉 PDF C# - 完整指南與 IronPDF:圖 8

從Pixabay添加上傳

或將圖片拖放到此處

新增圖片替代文字

IronPDF 的使用案例

  1. 發票生成

    • 許多企業使用 IronPDF 根據動態數據生成專業發票。 內嵌 CSS 樣式的 HTML 模板渲染成 PDF 發票,然後發送給客戶。
  2. 報告和數據分析

    • IronPDF 非常適合從資料來源製作詳細報告。 您可以透過將數據與 HTML 範本結合,添加圖表,並將其呈現為 PDF 格式以供分享或列印,來生成自訂報告。
  3. 法律和合約文件

    • 法律公司使用 IronPDF 生成合同、法律协议和其他文档类型。能够添加数字签名并通过加密保护文档,使其特别适合法律工作流程。
  4. 教育材料

    • 教育機構使用 IronPDF 來創建和分發 PDF,例如證書、課程材料和講義筆記,這些文件的樣式始終如一且專業。
  5. 表單和調查

    • IronPDF 處理表單的能力對於生成調查、問卷或任何其他類型的互動式表單而言非常有價值。 可以預先填寫資料,並且可以提取和處理表單回應。

授權資訊(提供試用版)

IronPDF。 在使用IronPDF庫之前放置它,如下所示

IronPdf.License.LicenseKey = "your key";
IronPdf.License.LicenseKey = "your key";

結論

IronPDF 是一個強大且多功能的函式庫,使得將 HTML 轉換為 PDF 輕而易舉。 無論您是需要生成簡單的文件還是具有動態內容的複雜報告,IronPDF 都能滿足您的需求。 憑藉其易於使用的 API 和對標題、頁腳和外部資源等高級功能的支持,IronPDF 是開發人員尋求從 HTML 內容創建高質量 PDF 文件的寶貴工具。 在您的下一個專案中嘗試使用它,體驗將 HTML 輕鬆轉換為 PDF 的便利。

< 上一頁
C# 創建 PDF - 使用 IronPDF 的完整指南
下一個 >
C# 開發者的 HTML 到 PDF 轉換指南(適用於 .NET)