IRONSOFTWAREHOME

在ASP.NET中使用C#或VB生成PDF報告

Curtis Chau
Curtis Chau
Updated: 2026年9月5日

IronPDF使.NET開發人員能夠通過將HTML內容渲染為PDF文件,以生成來自HTML、Crystal Reports、XML和SQL伺服器資料的PDF報告。 此C#程式庫通過幾行程式碼簡化了在ASP.NET應用程式中的報告建立,同時保留所有格式和樣式。

快速入門:使用IronPDF生成PDF報告

只需幾行程式碼即可使用IronPDF開始生成PDF報告。 本快速指南使得開發者可以快捷地將HTML內容轉換為專業的PDF文件,輕鬆保留所有格式。 請參考下面的範例,了解如何輕鬆地將資料轉換為精美的PDF報告。

  1. 1Install IronPDF with NuGet Package Manager

    PM > Install-Package IronPdf

  2. 2複製並運行這段程式碼片段。

    // Instantiate ChromePdfRenderer for HTML to PDF conversion
    new IronPdf.ChromePdfRenderer().RenderHtmlFileAsPdf("report.html").SaveAs("report.pdf");
    C#
  3. 3部署以在您的實時環境中測試

    今天就開始在您的專案中使用IronPDF,透過免費試用
    arrow pointer

步驟1

如何安裝IronPDF?

IronPDF on NuGet

PM > Install-Package IronPdf

您還可以手動下載IronPDF DLL。 對於高級安裝場景,請查看我們的綜合NuGet套件指南,涵蓋Azure、AWS、Linux、Mac 和Windows 平台的配置。 如果您正在使用容器化應用,我們的Docker整合指南提供詳細的設置說明。


如何教程

生成PDF報告的方法論是什麼?

首先將報告生成為HTML文件,然後使用IronPDF將HTML渲染為PDF。 本教程為您展示了在ASP.NET C#中建立PDF報告的步驟。 IronPDF的Chrome渲染引擎可確保像素完美轉換,並支持現代HTML5、CSS3和JavaScript。

using IronPdf;

ChromePdfRenderer renderer = new ChromePdfRenderer();

renderer.RenderHtmlFileAsPdf("report.html").SaveAs("report.pdf");

如果您有更複雜的報告需求,請參考我們的綜合PDF建立教程,其中涵蓋了水印、壓縮、背景、頁首、頁尾、表單和密碼保護。

如何使用.NET將Crystal Reports轉換為PDF?

使用以下步驟將Crystal Reports匯出成HTML:

文件 → 匯出 → HTML 4.0

生成的報告可以使用上面方法論部分的C#範例程式碼匯出為PDF。 IronPDF提供卓越的HTML文件轉PDF支持,保持您從Crystal Reports輸出的所有格式和樣式。

這裡有一個例子:

using IronPdf;
using IronSoftware.Drawing;

ChromePdfRenderer renderer = new ChromePdfRenderer();

// Add a header to very page easily
renderer.RenderingOptions.FirstPageNumber = 1;
renderer.RenderingOptions.TextHeader.DrawDividerLine = true;
renderer.RenderingOptions.TextHeader.CenterText = "{url}";
renderer.RenderingOptions.TextHeader.Font = FontTypes.Arial;
renderer.RenderingOptions.TextHeader.FontSize = 12;

// Add a footer too
renderer.RenderingOptions.TextFooter.DrawDividerLine = true;
renderer.RenderingOptions.TextFooter.Font = FontTypes.Arial;
renderer.RenderingOptions.TextFooter.FontSize = 10;
renderer.RenderingOptions.TextFooter.LeftText = "{date} {time}";
renderer.RenderingOptions.TextFooter.RightText = "{page} of {total-pages}";

renderer.RenderHtmlFileAsPdf(@"c:\my\exported\report.html").SaveAs("report.pdf");

想進一步自定義頁首和頁尾,包括基於HTML的頁首,請參考我們的頁首和頁尾指南。

如何以編程方式將Crystal Reports轉換為PDF?

如果您希望以編程方式從Crystal Reports (RPT) 文件建立PDF,這也是可行的,並能為您帶來更多的控制權。 這種方法與IronPDF的渲染選項無縫整合,實現完全的自定義化。

using CrystalDecisions.CrystalReports.Engine;
using CrystalDecisions.Shared;
using System.IO;
using IronPdf;

public static void ExportRptToPdf(string rptPath, string pdfOutputPath)
{
    // Load the Crystal Report
    ReportDocument rpt = new ReportDocument();
    rpt.Load(rptPath);

    // Configure export options for HTML output
    DiskFileDestinationOptions diskOpts = new DiskFileDestinationOptions()
    {
        DiskFileName = @"c:\tmp\html\b.html" // Temporary HTML file
    };

    ExportOptions exportOpts = ExportOptions.CreateExportOptions();
    exportOpts.ExportDestinationType = ExportDestinationType.DiskFile;
    exportOpts.ExportFormatType = ExportFormatType.HTML40; // Export as HTML 4.0
    exportOpts.ExportDestinationOptions = diskOpts;

    // Export report to HTML
    rpt.Export();

    // Convert HTML to PDF using IronPDF
    var Renderer = new ChromePdfRenderer();
    // Add dynamic header with URL
    Renderer.RenderingOptions.TextHeader.CenterText = "{url}";
    // Add footer with timestamp and page numbers
    Renderer.RenderingOptions.TextFooter.LeftText = "{date} {time}";
    Renderer.RenderingOptions.TextFooter.RightText = "{page} of {total-pages}";

    // Render the HTML file to PDF and save
    Renderer.RenderFileAsPdf(diskOpts.DiskFileName).SaveAs(pdfOutputPath);

    Console.WriteLine("Report Written To {0}", Path.GetFullPath(pdfOutputPath));
}

我最喜歡的程式庫是IronPDF。它允許快速高效地操作PDF文件。它還有許多有價值的功能,例如導出到PDF/A格式和數位簽署PDF文件。

Milan Jovanovic

Microsoft MVP

查看案例研究

IronOCR意味著我們每年可以從手動處理中節省$40,000,同時提高生產力,釋放資源以進行高影響的任務。我會強烈推薦它。

Brent Matzelle

首席技術官,OPYN

查看案例研究

IronSuite在我們的運營中扮演著至關重要的角色。這些工具增加了包括建立平面圖和改善庫存管理在內的業務效率。

David Jones

首席軟體工程師,Agorus Build

查看案例研究

如何從XML生成PDF報告?

儘管XML不如JSON等格式易於編碼,但匯出報告資料為XML仍然很常見。 IronPDF提供了卓越的XML到PDF轉換支持,提供多種方法來處理XML資料。

在設置XML報告樣式時,解析XML並用資料生成HTML。

更加優雅的解決方案是使用XSLT借助XslCompiledTransform類將XML直接轉換為HTML,詳見文章使用XslCompiledTransform類。

然後可使用IronPDF將生成的HTML字串或文件渲染為PDF:

using System.IO;
using System.Xml;
using System.Xml.Xsl;
using IronPdf;

public static void ConvertXmlToPdf(string xml, string xslt, string pdfOutputPath)
{
    // Initialize XSLT transformation
    XslCompiledTransform transform = new XslCompiledTransform();
    using (XmlReader reader = XmlReader.Create(new StringReader(xslt)))
    {
        transform.Load(reader); // Load XSLT stylesheet
    }
    
    // Transform XML to HTML
    StringWriter results = new StringWriter();
    using (XmlReader reader = XmlReader.Create(new StringReader(xml)))
    {
        transform.Transform(reader, null, results); // Apply transformation
    }

    // Convert the generated HTML to PDF
    ChromePdfRenderer renderer = new ChromePdfRenderer();
    renderer.RenderHtmlAsPdf(results.ToString()).SaveAs(pdfOutputPath);
}

請存取C#和VB.NET中將XML轉換為PDF的文章以了解有關XML高級轉換技術和最佳實踐的更多資訊。

如何將SQL伺服器報告匯出為PDF?

微軟的SQL Server和免費的SQL Server Express都包含報告工具。 在ASP.NET中將SSRS報告匯出為PDF是IronPDF的一個可用例。 對於複雜的資料可視化需求,IronPDF支持渲染JavaScript圖表,包括受歡迎的C3.js、D3.js 和 Highcharts庫。

教程:如何尋找和啟動報告服務工具(SSRS)

這些報告可以生成為HTML,然後可以使用IronPDF自定義並轉換為PDF格式。 IronPDF的HTML字串到PDF轉換功能提供了對最終輸出的完全控制。

渲染為HTML(報告生成器)

在需要安全資料存取的企業環境中,IronPDF支持TLS網站和系統登錄來處理身份驗證的報告生成。

如何保護PDF報告的安全性?

為了確保PDF報告未被修改或篡改,請進行數位簽名。 這最容易在PDF報告文件被渲染並保存到磁碟後實現。 IronPDF提供綜合的PDF簽名功能,包括支持硬體安全模組(HSM)。

using IronPdf.Signing;

// Sign our PDF Report using a p12 or pix digital certificate file
new PdfSignature("IronSoftware.pfx", "123456").SignPdfFile("signed.pdf");

如果您沒有數位簽名,可以使用macOS和Windows上的免費Adobe Acrobat Reader建立新的數位簽名文件。 為了採取額外的安全措施,請探索我們的PDF權限和密碼指南,以控制文件的存取權限和編輯權限。

如何使用ASP.NET Webforms將ASPX轉換為PDF?

在ASP.NET中提供HTML內容的最簡便方法是使用ASP.NET WebForms應用的IronPdf.AspxToPdf類。 此強大功能允許您將整個ASPX頁面,包括伺服器端控件和動態內容,直接轉換為PDF。

using IronPdf;

public static void RenderAspxToPdf()
{
    // Configure PDF rendering options
    var AspxToPdfOptions = new ChromePdfRenderOptions()
    {
        EnableJavaScript = false, // Disable JavaScript for simpler reports
        PrintHtmlBackgrounds = true, // Include background colors and images
        MarginTop = 20, // Set top margin in mm
        MarginBottom = 20, // Set bottom margin in mm
        PaperOrientation = IronPdf.Rendering.PdfPaperOrientation.Portrait,
        PaperSize = IronPdf.Rendering.PdfPaperSize.A4
        // ...many more options available
    };

    // Render the HTML page to PDF and prompt download
    <code>AspxToPdf.RenderThisPageAsPdf(AspxToPdf.FileBehavior.Attachment, "Report.pdf", AspxToPdfOptions)</code>;
}

我們希望這篇文章能幫助您學習如何在ASP.NET C#或VB.NET中生成PDF報告。 您還可以查看我們完整的ASP.NET ASPX到PDF教程,了解有關進階場景的更多資訊,包括ASPX頁面到PDF設置和處理複雜佈局。

常見問題

如何在C#中從HTML生成PDF報告?

IronPDF可以讓您僅用一行程式碼從HTML生成PDF報告:new IronPdf.ChromePdfRenderer().RenderHtmlFileAsPdf("report.html").SaveAs("report.pdf")。這保留了最終PDF文件中的所有HTML格式化和樣式。

可以將哪些型別的報告轉換為PDF?

IronPDF支持將多種型別的報告轉換為PDF,包括HTML報告、被導出為HTML 4.0的Crystal Reports、經HTML樣式化的XML報告和SQL Server資料報告。這個程式庫使用Chrome渲染引擎來確保像素級精確的轉換。

如何安裝PDF報告生成器程式庫?

您可以使用命令'Install-Package IronPdf'通過NuGet套件管理器安裝IronPDF,或手動下載DLL。此程式庫支持多種平台,包括Azure、AWS、Linux、Mac、Windows和Docker容器。

我可以在.NET中將Crystal Reports轉換為PDF嗎?

是的,您可以使用IronPDF將Crystal Reports轉換為PDF,首先將Crystal Report導出為HTML 4.0格式(File → Export → HTML 4.0),然後使用IronPDF的RenderHtmlFileAsPdf方法將HTML輸出轉換為PDF文件。

如何從SQL Server資料建立PDF報告?

要從SQL Server資料建立PDF報告,首先生成包含資料的HTML報告,然後使用IronPDF的ChromePdfRenderer將HTML轉換為PDF。此程式庫保留了所有格式化,這使得它非常適合用於資料庫驅動的報告。

我可以對PDF報告進行數位簽名嗎?

是的,IronPDF允許您對PDF報告進行數位簽名,以確保它們未被篡改。此功能為您生成的PDF文件增加了一層額外的安全性和真實性。

此程式庫是否支持現代網頁標準?

IronPDF的Chrome渲染引擎完全支持現代HTML5、CSS3和JavaScript,確保您的報告準確渲染,並且保留所有現代網頁樣式和互動元素在PDF輸出中。

How do I convert an ASPX page to PDF using IronPDF?

IronPDF offers the `AspxToPdf` class to directly convert ASPX pages to PDF in ASP.NET WebForms. This includes server-side controls and dynamic content, allowing you to generate complete PDF versions of ASPX pages effortlessly.

Can XML be converted to PDF with IronPDF?

Yes, XML can be converted to PDF using IronPDF by first transforming XML data into HTML through XSLT, and then converting the HTML to PDF. This process ensures that the layout and data integrity are maintained.

Does IronPDF support digitally signing PDF reports?

Yes, IronPDF supports digitally signing PDF reports to ensure document integrity. You can use P12 or PIX digital certificates to sign PDF files, securing them against unauthorized modifications.

Curtis Chau
技術作家

Curtis Chau擁有Carleton大學的電腦科學學士學位,專精於前端開發,擁有Node.js、TypeScript、JavaScript和React的專業知識。Curtis熱衷於建立直觀且美觀的使用者介面,喜愛使用現代框架並建立結構良好、視覺吸引力的手冊。

...
閱讀更多

準備開始了嗎?

Nuget Downloads 21,105,021版本:2026.9剛剛發布

立即獲取免費

立即獲取 30天試用金鑰。

bullet_checked無需信用卡或註冊帳號
bullet_test在生產
環境中進行測試,且不顯示浮水印
bullet_calendar30 天全
功能產品
bullet_support試用期間提供 24/5 技術
支援
立即獲取您的免費30天試用密鑰。
不需要信用卡或建立賬戶
C# 用於PDF的NuGet程式庫
使用NuGet安裝

版本: 2026.9

PM > Install-Package IronPdf
nuget.org/packages/IronPdf/
  1. 在解決方案資源管理器,右鍵點選參考,管理NuGet包
  2. 選擇瀏覽並搜尋"IronPdf"
  3. 選擇套件並安裝
C# PDF DLL
下載DLL

版本: 2026.9

或者點擊此處下載Windows安裝程式。

  1. 下載並解壓IronPDF到類似~/Libs的位置,位於您的解決方案目錄中
  2. 在Visual Studio解決方案資源管理器,右鍵點選參考。選擇瀏覽,"IronPdf.dll"

授權從$999起

有問題嗎?聯絡我們的開發團隊。

Key in blue circle

立即免費取得 30 天試用金鑰。

Your trial license will be sent to your email address

無任何限制。100% 解鎖。無需信用卡。

OR
bullet_checked無需信用卡或建立帳號無任何限制。100% 解鎖。無需信用卡。
  • Logo Aetna
  • Logo NASA
  • Logo GE
  • Logo Porsche
  • Logo USDA
  • Logo Qatar
Join Millions of Engineers who’ve tried Iron Suite
預訂您的免費現場演示
Booking Badge

受到全球數百萬工程師的信任

Iron Software的客戶標誌
獲取您的無義務諮詢
填寫以下表格或電子郵件sales@ironsoftware.com
您的詳細資訊將始終保密。
受到全球數百萬工程師的信任
Iron Software的客戶標誌
立即獲取您的30天試用金鑰。
無需信用卡或帳戶建立
C# 用於PDF的NuGet程式庫
使用NuGet安裝

版本: 2026.9

PM > Install-Package IronPdf
nuget.org/packages/IronPdf/
  1. 在解決方案資源管理器,右鍵點選參考,管理NuGet包
  2. 選擇瀏覽並搜尋"IronPdf"
  3. 選擇套件並安裝
C# PDF DLL
下載DLL

版本: 2026.9

或者點擊此處下載Windows安裝程式。

  1. 下載並解壓IronPDF到類似~/Libs的位置,位於您的解決方案目錄中
  2. 在Visual Studio解決方案資源管理器,右鍵點選參考。選擇瀏覽,"IronPdf.dll"

授權從$999起