跳過到頁腳內容
USING IRONPDF

Create PDF ASP .NET C#: Complete Guide to PDF Generation with IronPDF

IronPDF 透過提供基於 Chrome 的渲染引擎,簡化了 ASP.NET C# 中的 PDF 生成,只需幾行程式碼即可將 HTML、CSS 和 JavaScript 直接轉換為 PDF 文檔,從而消除了傳統 PDF API 的複雜性。

如果您曾經在 ASP.NET C# 中遇到過產生格式化 PDF 檔案的問題,您就會知道這有多令人沮喪。 對專業發票、詳細報告和正式文件的需求是持續存在的,但傳統的 PDF API 往往因為其複雜性而成為阻礙。

幸運的是, IronPDF簡化了這種複雜性。 這個高效的 .NET PDF 程式庫簡化了整個流程,為您提供完整的程式碼和工具,以便快速產生可靠的 PDF 文件。 無論部署到AzureAWS ,IronPDF 都能實現跨雲端平台的無縫整合。 該程式庫還支援Docker 部署,可以作為遠端容器服務運行,以實現靈活的架構。

為什麼 ASP.NET Core 中的 PDF 產生至關重要?

為什麼企業需要伺服器端 PDF 產生?

PDF 文件是跨不同平台和裝置共用格式化內容的通用標準。 在 ASP.NET Core 應用程式中,產生 PDF 文件可讓企業建立專業的發票、詳細的報告和正式文檔,無論在何種檢視環境下,這些文檔都能保持其格式。 伺服器端 PDF 產生可提供一致的輸出、更好的安全控制,並消除對客戶端資源的依賴。 新增數位簽章設定 PDF 密碼和權限的功能可確保文件的完整性和保密性。 您也可以使用 HSM 對 PDF 進行簽名以實現基於硬體的安全保護,或實施PDF/UA 合規性以滿足輔助功能要求。

HTML 轉 PDF 有哪些優點?

將HTML內容直接轉換為PDF格式的功能開啟了有效的可能性。 您可以利用現有的 HTML 和 CSS 知識創建格式精美的 PDF 文檔,而無需學習複雜的 PDF 專用 API。這種方法使您能夠輕鬆地從現有網頁、 Razor 視圖或自訂 HTML 字串生成 PDF 文件。 IronPDF 支援響應式 CSS ,甚至可以在轉換過程中處理JavaScript 執行。 該程式庫還支援從MVC CoreMVC Framework中的 CSHTML 檔案進行轉換,甚至可以無頭處理 CSHTML以進行背景操作。

IronPDF 如何簡化 PDF 建立流程?

IronPDF的渲染引擎有何特別之處?

IronPDF憑藉其基於Chrome的渲染引擎在眾多PDF庫中脫穎而出,該引擎可確保精確的HTML到PDF轉換。 此引擎支援包括 CSS3、JavaScript 和響應式佈局在內的現代 Web 標準,從而可以建立與 HTML 文件外觀完全相同的 PDF 文件。 渲染引擎可以處理自訂字體網頁字體和圖標,甚至是複雜的WebGL 內容,確保像素級的完美效果。 它採用與 Google Chrome 相同的技術,可提供可靠的像素級完美 HTML 到 PDF轉換。 該引擎還支援SVG 圖形,並且可以處理Base64 編碼的圖像,用於建立獨立文件。

為什麼 IronPDF 對初學者來說很容易使用?

該程式庫的 API 設計簡潔明了,無需進行大量配置即可立即開始產生 PDF。 IronPDF 在後台處理 PDF 文件創建的複雜性,從管理字體和圖像到正確渲染複雜的佈局。 無論您需要從簡單的 HTML 字串產生 PDF,還是轉換整個網頁,流程始終保持簡單。 完整的文件教學讓入門變得輕鬆,而API 參考則提供了進階場景的詳細資訊。 快速入門指南提供了快速入門指導,庫中包含了大量常見用例的程式碼範例

如何在 ASP.NET Core 中開始使用 IronPDF?

安裝步驟有哪些?

使用NuGet 套件管理器在 ASP.NET Core 專案中設定 IronPDF 非常簡單。 在 Visual Studio 中開啟程式包管理器控制台,並執行以下命令:

Install-Package IronPdf
Install-Package IronPdf
SHELL

IronPDF 針對WindowsLinuxmacOS部署提供平台特定的最佳化。 您也可以將 IronPDF 運行在Docker 容器中,或作為遠端服務運行,以實現靈活的架構。 該庫提供Windows 安裝程式用於手動安裝,並支援Android 行動應用程式部署。 有關詳細的安裝說明,請參閱安裝概述

我需要許可證才能開始開發嗎?

安裝完成後,您將可以存取完整的 IronPDF 庫,並立即開始建立 PDF 檔案。 生產環境使用需要申請許可證密鑰,但免費版本允許進行完整的開發和測試。 授權選項包括各種級別,以滿足不同的專案需求,從個人開發者到企業部署。 隨著需求的成長,您可以探索授權擴展方案以獲得額外的保障範圍和升級選項。 該庫支援自訂日誌記錄,用於生產環境中的調試和監控。

如何從簡單的HTML字串建立PDF文件?

PDF產生的基本程式碼模式是什麼?

讓我們從一個簡單的範例開始,示範如何從 HTML 字串建立 PDF 檔案。 本範例展示了產生 PDF 文件的基本方法:

using IronPdf;
public class PdfGenerator
{
    public void CreateSimplePdf()
    {
        // Create a new PDF document
        var renderer = new ChromePdfRenderer();
        // Generate PDF from HTML string
        var pdf = renderer.RenderHtmlAsPdf("<h1>Hello World</h1><p>This is my first PDF file in C#!</p>");
        // Save the PDF file
        pdf.SaveAs("simple-document.pdf");
    }
}
using IronPdf;
public class PdfGenerator
{
    public void CreateSimplePdf()
    {
        // Create a new PDF document
        var renderer = new ChromePdfRenderer();
        // Generate PDF from HTML string
        var pdf = renderer.RenderHtmlAsPdf("<h1>Hello World</h1><p>This is my first PDF file in C#!</p>");
        // Save the PDF file
        pdf.SaveAs("simple-document.pdf");
    }
}
Imports IronPdf

Public Class PdfGenerator
    Public Sub CreateSimplePdf()
        ' Create a new PDF document
        Dim renderer = New ChromePdfRenderer()
        ' Generate PDF from HTML string
        Dim pdf = renderer.RenderHtmlAsPdf("<h1>Hello World</h1><p>This is my first PDF file in C#!</p>")
        ' Save the PDF file
        pdf.SaveAs("simple-document.pdf")
    End Sub
End Class
$vbLabelText   $csharpLabel

輸出 PDF

使用 IronPDF 將簡單的 HTML 字串轉換為 PDF 文檔,顯示基本標題和段落文本,並採用預設格式。

幕後究竟發生了什麼事?

這段程式碼會建立一個包含基本HTML內容的新文件。 ChromePdfRenderer類別負責處理所有轉換細節,將您的 HTML 轉換為格式正確的 PDF 檔案。產生的文件在轉換為可移植文件格式的同時,保留了 HTML 結構。 您也可以在我們的網站上找到包含完整程式碼範例的實用PDF 教學。對於更進階的場景,您可以設定自訂邊距配置紙張尺寸控制頁面方向。 此渲染器支援響應式設計的視口配置,並提供多種 PDF 版本輸出。 您也可以將 PDF 檔案儲存到記憶體流中,以用於雲端儲存場景。

如何使用複雜的HTML產生PDF文件?

如何建立專業的商務文件?

IronPDF 擅長將複雜的 HTML 內容渲染成 PDF 文件。 讓我們建立一個更複雜的發票文檔,以展示該庫使用樣式化 HTML 內容的功能:

using IronPdf;
using System;
public class InvoiceGenerator
{
    public void CreateInvoiceDocument()
    {
        var renderer = new ChromePdfRenderer();
        // HTML content with styling
        string htmlContent = @"
        <!DOCTYPE html>
        <html>
        <head>
            <style>
                body { font-family: 'Arial', sans-serif; margin: 40px; }
                .header { background-color: #003366; color: white; padding: 20px; text-align: center; }
                .invoice-details { margin: 20px 0; }
                table { width: 100%; border-collapse: collapse; margin-top: 20px; }
                th { background-color: #f0f0f0; padding: 10px; text-align: left; }
                td { padding: 10px; border-bottom: 1px solid #ddd; }
                .total { font-size: 18px; font-weight: bold; text-align: right; margin-top: 20px; }
            </style>
        </head>
        <body>
            <div class='header'>
                <h1>INVOICE</h1>
            </div>
            <div class='invoice-details'>
                <p><strong>Invoice Number:</strong> INV-2024-001</p>
                <p><strong>Date:</strong> " + DateTime.Now.ToString("yyyy-MM-dd") + @"</p>
                <p><strong>Customer:</strong> ABC Corporation</p>
            </div>
            <table>
                <thead>
                    <tr>
                        <th>Item</th>
                        <th>Quantity</th>
                        <th>Price</th>
                        <th>Total</th>
                    </tr>
                </thead>
                <tbody>
                    <tr>
                        <td>Professional Services</td>
                        <td>10</td>
                        <td>$150.00</td>
                        <td>$1,500.00</td>
                    </tr>
                    <tr>
                        <td>Software License</td>
                        <td>1</td>
                        <td>$499.00</td>
                        <td>$499.00</td>
                    </tr>
                </tbody>
            </table>
            <div class='total'>
                Total Amount: $1,999.00
            </div>
        </body>
        </html>";
        // Generate PDF file
        var document = renderer.RenderHtmlAsPdf(htmlContent);
        document.SaveAs("invoice.pdf");
    }
}
using IronPdf;
using System;
public class InvoiceGenerator
{
    public void CreateInvoiceDocument()
    {
        var renderer = new ChromePdfRenderer();
        // HTML content with styling
        string htmlContent = @"
        <!DOCTYPE html>
        <html>
        <head>
            <style>
                body { font-family: 'Arial', sans-serif; margin: 40px; }
                .header { background-color: #003366; color: white; padding: 20px; text-align: center; }
                .invoice-details { margin: 20px 0; }
                table { width: 100%; border-collapse: collapse; margin-top: 20px; }
                th { background-color: #f0f0f0; padding: 10px; text-align: left; }
                td { padding: 10px; border-bottom: 1px solid #ddd; }
                .total { font-size: 18px; font-weight: bold; text-align: right; margin-top: 20px; }
            </style>
        </head>
        <body>
            <div class='header'>
                <h1>INVOICE</h1>
            </div>
            <div class='invoice-details'>
                <p><strong>Invoice Number:</strong> INV-2024-001</p>
                <p><strong>Date:</strong> " + DateTime.Now.ToString("yyyy-MM-dd") + @"</p>
                <p><strong>Customer:</strong> ABC Corporation</p>
            </div>
            <table>
                <thead>
                    <tr>
                        <th>Item</th>
                        <th>Quantity</th>
                        <th>Price</th>
                        <th>Total</th>
                    </tr>
                </thead>
                <tbody>
                    <tr>
                        <td>Professional Services</td>
                        <td>10</td>
                        <td>$150.00</td>
                        <td>$1,500.00</td>
                    </tr>
                    <tr>
                        <td>Software License</td>
                        <td>1</td>
                        <td>$499.00</td>
                        <td>$499.00</td>
                    </tr>
                </tbody>
            </table>
            <div class='total'>
                Total Amount: $1,999.00
            </div>
        </body>
        </html>";
        // Generate PDF file
        var document = renderer.RenderHtmlAsPdf(htmlContent);
        document.SaveAs("invoice.pdf");
    }
}
Imports IronPdf
Imports System

Public Class InvoiceGenerator
    Public Sub CreateInvoiceDocument()
        Dim renderer = New ChromePdfRenderer()
        ' HTML content with styling
        Dim htmlContent As String = "
        <!DOCTYPE html>
        <html>
        <head>
            <style>
                body { font-family: 'Arial', sans-serif; margin: 40px; }
                .header { background-color: #003366; color: white; padding: 20px; text-align: center; }
                .invoice-details { margin: 20px 0; }
                table { width: 100%; border-collapse: collapse; margin-top: 20px; }
                th { background-color: #f0f0f0; padding: 10px; text-align: left; }
                td { padding: 10px; border-bottom: 1px solid #ddd; }
                .total { font-size: 18px; font-weight: bold; text-align: right; margin-top: 20px; }
            </style>
        </head>
        <body>
            <div class='header'>
                <h1>INVOICE</h1>
            </div>
            <div class='invoice-details'>
                <p><strong>Invoice Number:</strong> INV-2024-001</p>
                <p><strong>Date:</strong> " & DateTime.Now.ToString("yyyy-MM-dd") & "</p>
                <p><strong>Customer:</strong> ABC Corporation</p>
            </div>
            <table>
                <thead>
                    <tr>
                        <th>Item</th>
                        <th>Quantity</th>
                        <th>Price</th>
                        <th>Total</th>
                    </tr>
                </thead>
                <tbody>
                    <tr>
                        <td>Professional Services</td>
                        <td>10</td>
                        <td>$150.00</td>
                        <td>$1,500.00</td>
                    </tr>
                    <tr>
                        <td>Software License</td>
                        <td>1</td>
                        <td>$499.00</td>
                        <td>$499.00</td>
                    </tr>
                </tbody>
            </table>
            <div class='total'>
                Total Amount: $1,999.00
            </div>
        </body>
        </html>"
        ' Generate PDF file
        Dim document = renderer.RenderHtmlAsPdf(htmlContent)
        document.SaveAs("invoice.pdf")
    End Sub
End Class
$vbLabelText   $csharpLabel

輸出 PDF 文件

由複雜的HTML程式碼產生的專業商業發票PDF文件,包含樣式化的頁首、格式化的帳單明細表格以及計算出的總計。

為什麼CSS樣式如此有效?

以上程式碼示範了 IronPDF 如何處理複雜的 HTML 結構、CSS 樣式和動態內容,從而建立專業的 PDF 文件。 生成的 PDF 文件保留了所有格式,非常適合用於生成商務文件。 您也可以透過新增浮水印套用圖章嵌入來自 Azure Blob 儲存體的影像來進一步改進文件。 IronPDF 也支援UTF-8 和國際語言,確保全球相容性。 對於進階佈局,您可以使用 CSS 列印媒體來改善 PDF 輸出、新增條碼建立表單。 該程式庫可處理HTML ZIP 歸檔文件,並支援對已認證內容的自訂 HTTP 標頭

如何在 ASP.NET Core MVC 控制器中產生 PDF 檔案?

從控制器返回 PDF 的最佳方法是什麼?

在 ASP.NET Core MVC 應用程式中,通常會在控制器操作中產生 PDF 文件,並將其傳回給使用者下載。 請看以下程式碼範例:

using Microsoft.AspNetCore.Mvc;
using IronPdf;
using System.IO;
public class DocumentController : Controller
{
    public IActionResult GenerateReport()
    {
        var renderer = new ChromePdfRenderer();
        // Configure rendering options
        renderer.RenderingOptions.MarginTop = 25;
        renderer.RenderingOptions.MarginBottom = 25;
        renderer.RenderingOptions.CssMediaType = IronPdf.Rendering.PdfCssMediaType.Print;
        string htmlString = @"
        <html>
        <head>
            <style>
                body { font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif; }
                h1 { color: #2c3e50; }
                .report-content { line-height: 1.6; }
            </style>
        </head>
        <body>
            <h1>Monthly Sales Report</h1>
            <div class='report-content'>
                <p>This report contains confidential sales data for the current month.</p>
                <p>Total Revenue: $45,678</p>
                <p>New Customers: 123</p>
            </div>
        </body>
        </html>";
        // Create PDF document
        var pdfDocument = renderer.RenderHtmlAsPdf(htmlString);
        // Convert to byte array
        byte[] pdfBytes = pdfDocument.BinaryData;
        // Return file
        return File(pdfBytes, "application/pdf", "sales-report.pdf");
    }
}
using Microsoft.AspNetCore.Mvc;
using IronPdf;
using System.IO;
public class DocumentController : Controller
{
    public IActionResult GenerateReport()
    {
        var renderer = new ChromePdfRenderer();
        // Configure rendering options
        renderer.RenderingOptions.MarginTop = 25;
        renderer.RenderingOptions.MarginBottom = 25;
        renderer.RenderingOptions.CssMediaType = IronPdf.Rendering.PdfCssMediaType.Print;
        string htmlString = @"
        <html>
        <head>
            <style>
                body { font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif; }
                h1 { color: #2c3e50; }
                .report-content { line-height: 1.6; }
            </style>
        </head>
        <body>
            <h1>Monthly Sales Report</h1>
            <div class='report-content'>
                <p>This report contains confidential sales data for the current month.</p>
                <p>Total Revenue: $45,678</p>
                <p>New Customers: 123</p>
            </div>
        </body>
        </html>";
        // Create PDF document
        var pdfDocument = renderer.RenderHtmlAsPdf(htmlString);
        // Convert to byte array
        byte[] pdfBytes = pdfDocument.BinaryData;
        // Return file
        return File(pdfBytes, "application/pdf", "sales-report.pdf");
    }
}
Imports Microsoft.AspNetCore.Mvc
Imports IronPdf
Imports System.IO

Public Class DocumentController
    Inherits Controller

    Public Function GenerateReport() As IActionResult
        Dim renderer As New ChromePdfRenderer()
        ' Configure rendering options
        renderer.RenderingOptions.MarginTop = 25
        renderer.RenderingOptions.MarginBottom = 25
        renderer.RenderingOptions.CssMediaType = IronPdf.Rendering.PdfCssMediaType.Print
        Dim htmlString As String = "
        <html>
        <head>
            <style>
                body { font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif; }
                h1 { color: #2c3e50; }
                .report-content { line-height: 1.6; }
            </style>
        </head>
        <body>
            <h1>Monthly Sales Report</h1>
            <div class='report-content'>
                <p>This report contains confidential sales data for the current month.</p>
                <p>Total Revenue: $45,678</p>
                <p>New Customers: 123</p>
            </div>
        </body>
        </html>"
        ' Create PDF document
        Dim pdfDocument = renderer.RenderHtmlAsPdf(htmlString)
        ' Convert to byte array
        Dim pdfBytes As Byte() = pdfDocument.BinaryData
        ' Return file
        Return File(pdfBytes, "application/pdf", "sales-report.pdf")
    End Function
End Class
$vbLabelText   $csharpLabel

ASP.NET PDF 輸出

使用 ASP.NET MVC 控制器產生的 PDF 銷售報告,具有自訂邊距和列印改進 CSS 樣式,可輸出專業的商務文檔

渲染選項如何影響輸出結果?

此控制器操作會產生 PDF 文件並將其作為可下載文件傳回。渲染選項可讓您自訂邊距並指定 CSS 媒體類型,以獲得最佳的 PDF 格式輸出。 此實作會自動處理此問題,並將檔案以"sales-report.pdf"的形式傳回供下載。 對於更複雜的場景,您可以將 PDF 匯出到記憶體中進行進一步處理,或者實現非同步 PDF 生成以獲得更好的效能。 IronPDF 也支援將 ASPX 頁面轉換為 PDF,以用於舊版應用程式。 您可以使用平行 PDF 產生進行批次處理,為動態內容實作自訂渲染延遲,或使用Blazor Server 應用程式。 該庫提供效能最佳化指導,並支援高容量場景下的多執行緒操作

如何從URL和HTML檔產生PDF檔?

我可以將現有網頁轉換為 PDF 嗎?

IronPDF也可以將現有的網頁HTML檔案直接轉換為PDF格式。 當您需要從現有內容產生 PDF 時,這種方法具有明顯的優勢:

using IronPdf;
public class WebPageConverter
{
    public void ConvertUrlToPdf()
    {
        var renderer = new ChromePdfRenderer();
        renderer.RenderingOptions.CssMediaType = IronPdf.Rendering.PdfCssMediaType.Screen;
        renderer.RenderingOptions.EnableJavaScript = true;
        renderer.RenderingOptions.WaitFor.RenderDelay(1000);
        // Convert URL to PDF
        var urlPdf = renderer.RenderUrlAsPdf("___PROTECTED_URL_69___");
        urlPdf.SaveAs("webpage.pdf");
    }
    public void ConvertHtmlFileToPdf()
    {
        var renderer = new ChromePdfRenderer();
        // Convert HTML file to PDF
        var htmlFile = renderer.RenderHtmlFileAsPdf("template.html");
        htmlFile.SaveAs("from-file.pdf");
    }
}
using IronPdf;
public class WebPageConverter
{
    public void ConvertUrlToPdf()
    {
        var renderer = new ChromePdfRenderer();
        renderer.RenderingOptions.CssMediaType = IronPdf.Rendering.PdfCssMediaType.Screen;
        renderer.RenderingOptions.EnableJavaScript = true;
        renderer.RenderingOptions.WaitFor.RenderDelay(1000);
        // Convert URL to PDF
        var urlPdf = renderer.RenderUrlAsPdf("___PROTECTED_URL_69___");
        urlPdf.SaveAs("webpage.pdf");
    }
    public void ConvertHtmlFileToPdf()
    {
        var renderer = new ChromePdfRenderer();
        // Convert HTML file to PDF
        var htmlFile = renderer.RenderHtmlFileAsPdf("template.html");
        htmlFile.SaveAs("from-file.pdf");
    }
}
Imports IronPdf

Public Class WebPageConverter
    Public Sub ConvertUrlToPdf()
        Dim renderer = New ChromePdfRenderer()
        renderer.RenderingOptions.CssMediaType = IronPdf.Rendering.PdfCssMediaType.Screen
        renderer.RenderingOptions.EnableJavaScript = True
        renderer.RenderingOptions.WaitFor.RenderDelay(1000)
        ' Convert URL to PDF
        Dim urlPdf = renderer.RenderUrlAsPdf("___PROTECTED_URL_69___")
        urlPdf.SaveAs("webpage.pdf")
    End Sub

    Public Sub ConvertHtmlFileToPdf()
        Dim renderer = New ChromePdfRenderer()
        ' Convert HTML file to PDF
        Dim htmlFile = renderer.RenderHtmlFileAsPdf("template.html")
        htmlFile.SaveAs("from-file.pdf")
    End Sub
End Class
$vbLabelText   $csharpLabel

PDF 輸出的 URL

維基百科頁面已轉換為 PDF,完整保留了網頁佈局,包括導航、圖片和互動元素,並採用基於 Chrome 的精確渲染。

關於 JavaScript 渲染,我該了解些什麼?

這兩種方法在建立 PDF 檔案時都能完整保留原始內容的佈局、圖像和樣式。 WaitFor 類別提供了處理動態內容的進階選項,而自訂渲染延遲則確保 JavaScript 密集型頁面能夠完全渲染。 您也可以處理TLS 網站登錄,並使用cookie來取得經過驗證的內容。 此渲染器支援Angular.js和其他 JavaScript 框架,可以執行自訂 JavaScript ,並處理JavaScript 圖表。 對於複雜的場景,您可以設定自訂的基本 URL來載入資源,或從記憶體流中使用 HTML 。 ## 如何在 PDF 文件中新增頁首和頁尾?

為什麼頁首和頁尾對專業文件很重要?

在 PDF 文件中新增專業的頁首和頁尾可以改善文件的外觀,並提供重要的上下文訊息,例如頁碼和文件標題。 您的應用程式可以立即使用此功能:

using IronPdf;
public class HeaderFooterExample
{
    public void CreatePdfWithHeaderFooter()
    {
        var renderer = new ChromePdfRenderer();
        // Configure headers and footers
        renderer.RenderingOptions.HtmlHeader = new HtmlHeaderFooter()
        {
            MaxHeight = 25,
            HtmlFragment = "<div style='text-align:center'>Company Report</div>",
            DrawDividerLine = true
        };
        renderer.RenderingOptions.HtmlFooter = new HtmlHeaderFooter()
        {
            MaxHeight = 25,
            HtmlFragment = "<div style='text-align:center'>Page {page} of {total-pages}</div>",
            DrawDividerLine = true
        };
        // HTML content for the main document
        string content = "<h1>Annual Report</h1><p>This document contains important information.</p>";
        // Generate PDF with headers and footers
        var doc = renderer.RenderHtmlAsPdf(content);
        doc.SaveAs("report-with-headers.pdf");
    }
}
using IronPdf;
public class HeaderFooterExample
{
    public void CreatePdfWithHeaderFooter()
    {
        var renderer = new ChromePdfRenderer();
        // Configure headers and footers
        renderer.RenderingOptions.HtmlHeader = new HtmlHeaderFooter()
        {
            MaxHeight = 25,
            HtmlFragment = "<div style='text-align:center'>Company Report</div>",
            DrawDividerLine = true
        };
        renderer.RenderingOptions.HtmlFooter = new HtmlHeaderFooter()
        {
            MaxHeight = 25,
            HtmlFragment = "<div style='text-align:center'>Page {page} of {total-pages}</div>",
            DrawDividerLine = true
        };
        // HTML content for the main document
        string content = "<h1>Annual Report</h1><p>This document contains important information.</p>";
        // Generate PDF with headers and footers
        var doc = renderer.RenderHtmlAsPdf(content);
        doc.SaveAs("report-with-headers.pdf");
    }
}
Imports IronPdf

Public Class HeaderFooterExample
    Public Sub CreatePdfWithHeaderFooter()
        Dim renderer = New ChromePdfRenderer()
        ' Configure headers and footers
        renderer.RenderingOptions.HtmlHeader = New HtmlHeaderFooter() With {
            .MaxHeight = 25,
            .HtmlFragment = "<div style='text-align:center'>Company Report</div>",
            .DrawDividerLine = True
        }
        renderer.RenderingOptions.HtmlFooter = New HtmlHeaderFooter() With {
            .MaxHeight = 25,
            .HtmlFragment = "<div style='text-align:center'>Page {page} of {total-pages}</div>",
            .DrawDividerLine = True
        }
        ' HTML content for the main document
        Dim content As String = "<h1>Annual Report</h1><p>This document contains important information.</p>"
        ' Generate PDF with headers and footers
        Dim doc = renderer.RenderHtmlAsPdf(content)
        doc.SaveAs("report-with-headers.pdf")
    End Sub
End Class
$vbLabelText   $csharpLabel

輸出帶頁首的PDF文件

專業PDF文檔,附自訂HTML頁首和頁腳,自動產生頁碼和分隔線,打造精美商業報告

頁碼佔位符是如何運作的?

{page}{total-pages}佔位符會自動填入正確的頁碼,從而建立外觀專業的 PDF 檔案。 該庫會為您處理所有複雜操作,讓您可以為任何文件添加頁碼。 除了基本標題之外,您還可以新增自訂浮水印、實作分頁符,或為較長的文件建立目錄。 IronPDF 也支援新增附件建立互動式文件的 PDF 表單。 您可以利用進階 HTML 標頭實現複雜的佈局,新增註釋,或管理元資料。 該庫可讓您提取表單資料繪製形狀,甚至可以為現有 PDF添加文字和點陣圖

有哪些關鍵要點?

IronPDF 如何改變 PDF 產生方式?

使用 IronPDF 在 ASP.NET C# 中建立 PDF 文件,可以將一項可能很複雜的任務簡化為一個簡單的流程。 從簡單的 HTML 字串到複雜的發票文檔,IronPDF 的 Chrome 渲染引擎可確保您的 PDF 文件看起來完全符合預期。 該庫直觀的 API 可讓您使用最少的程式碼產生 PDF 文件、修改 PDF 文件以及處理現有的 PDF 文件。 IronPDF 支援進階功能,例如PDF 壓縮線性化PDF/A 合規性,以用於存檔目的。 該庫提供完整的文件組織功能,支援多種圖像格式,並且可以從現有的 PDF 中提取文字和圖像。 對於特殊需求,您可以進行灰階轉換DOCX 轉 PDF 轉換,甚至Markdown 轉 PDF轉換。

接下來我該怎麼做?

無論您是產生用於業務報告的 PDF、從網頁建立 PDF 文檔,還是將 HTML 內容轉換為便攜式文檔格式,IronPDF 都能提供您所需的所有工具。 準備好在 .NET 應用程式中建立專業的 PDF 檔案了嗎? 瀏覽示範以了解 IronPDF 的實際應用,或深入研究程式碼範例以了解實際應用。 查看與其他函式庫的比較,了解 IronPDF 的優勢,包括與AsposeiTextQuestPDFSyncfusion 的比較。

立即安裝 IronPDF,體驗使用合適的 .NET 庫產生 PDF 是多麼輕鬆。 請查看文件以了解更多詳情。 IronPDF 同時支援 .NET Framework 和 .NET Core,並提供F#VB.NET開發人員專屬支援。 該庫提供常見問題的完整故障排除指南,並為複雜場景提供工程支援

對於生產部署,請探索最適合您專案需求的完整授權選項。 使用 IronPDF,只需幾行程式碼即可在 ASP.NET Core 應用程式中有效地產生 PDF 文件。 無論您是尋求效能最佳化、需要處理多個 PDF 版本,還是想要實作PDF 安全清理,IronPDF 都能滿足您的需求。 該庫支援高級功能,例如將 PDF 轉換為 HTML將 PDF 柵格化為圖像,甚至列印到實體印表機。 您可以查看更新日誌,以了解最新功能和改進。

常見問題解答

什麼是 IronPDF,它如何協助在 ASP.NET C# 中建立 PDF?

IronPDF 是一個函式庫,可簡化在 ASP.NET C# 中建立和操作 PDF 檔案的過程。它可將 HTML 無縫轉換為 PDF,讓開發人員輕鬆產生專業文件、發票和報告。

如何在 ASP.NET C# 中使用 IronPDF 將 HTML 轉換為 PDF?

要在 ASP.NET C# 中使用 IronPDF 將 HTML 轉換為 PDF,您可以利用其簡單的 API,該 API 利用 Chrome 演算法。這可確保從 HTML 內容輸出高品質、精確的 PDF。

與傳統的 PDF API 相比,使用 IronPDF 有哪些優點?

與傳統的 API 相比,IronPDF 提供了更直接、更高效的 PDF 生成方法。它透過提供簡單的 API 介面和強大的功能(如基於 Chrome 的渲染)來降低複雜性,讓您更容易製作專業級的 PDF。

IronPDF 可以處理專業發票和報表的製作嗎?

是的,IronPdf 專門用於處理專業發票、詳細報告和其他正式文件的製作,因此對於需要格式良好 PDF 的企業而言,它是非常有價值的工具。

IronPDF 使用什麼渲染引擎將 HTML 轉換為 PDF?

IronPDF 使用 Chrome 渲染引擎將 HTML 轉換為 PDF,確保生成的 PDF 準確無誤,並保持原始 HTML 內容的風格。

IronPDF 適合生成複雜的 PDF 文件嗎?

IronPDF 絕對適合產生複雜的 PDF 文件。其強大的功能可讓開發人員建立複雜的版面與設計,同時維持文件的品質與專業性。

開發人員為何要選擇 IronPDF 在 ASP.NET C# 中生成 PDF?

開發人員應該選擇 IronPDF,因為它易用、可靠,而且能夠快速製作高品質的 PDF。該函式庫簡單的 API 和強大的功能集使其成為 ASP.NET C# 專案的理想選擇。

IronPDF 如何簡化 ASP.NET C# 中的 PDF 製作過程?

IronPDF 通過提供直觀的 API 簡化了 PDF 的創建過程,降低了傳統 PDF 函式庫的複雜性,讓開發人員可以專注於設計和功能,而不是技術障礙。

Curtis Chau
技術撰稿人

Curtis Chau 擁有電腦科學學士學位(卡爾頓大學),專長於前端開發,精通 Node.js、TypeScript、JavaScript 和 React。Curtis 對製作直覺且美觀的使用者介面充滿熱情,他喜歡使用現代化的架構,並製作結構良好且視覺上吸引人的手冊。

除了開發之外,Curtis 對物聯網 (IoT) 也有濃厚的興趣,他喜歡探索整合硬體與軟體的創新方式。在空閒時間,他喜歡玩遊戲和建立 Discord bots,將他對技術的熱愛與創意結合。