IronPDF 操作指南 ASP.NET ASPX文件轉換為PDF ASPX Pages to PDF in ASP.NET Curtis Chau 更新日期:7月 27, 2025 Download IronPDF NuGet 下載 DLL 下載 Windows 安裝程式 Start Free Trial Copy for LLMs Copy for LLMs Copy page as Markdown for LLMs Open in ChatGPT Ask ChatGPT about this page Open in Gemini Ask Gemini about this page Open in Grok Ask Grok about this page Open in Perplexity Ask Perplexity about this page Share Share on Facebook Share on X (Twitter) Share on LinkedIn Copy URL Email article This article was translated from English: Does it need improvement? Translated View the article in English 這篇 ASPX 到 PDF 的教程將逐步引導您如何將 ASPX 轉換為 PDF。 在 ASP.NET 網絡應用程序中將 ASPX 頁面保存為 PDF。 用戶不應該需要在 Google Chrome 中打開 .aspx 擴展名的 ASPX 文件。 我們要求工程團隊使用 .NET 代碼自動將 ASPX 轉換為 PDF! 我們再也不需要按下 CTRL P! 有一種基於服務器的方式可以轉換 ASPX 互聯網媒體並保存為 PDF。 應用設置,包括設置文件行為和名稱、添加頁眉和頁腳、改變打印選項、添加分頁符、結合異步和多線程等。 快速入門:在幾秒鐘內將 ASPX 轉換為 PDF 通過使用 IronPDF 輕鬆地將 ASPX 文件轉換為 PDF。 這個快速簡單的例子展示了如何只用幾行代碼將一個 ASPX 頁面直接渲染到 PDF 文檔中。 完美地适用于希望简化工作流程和增强 ASP.NET 应用程序的开发人员。 Get started making PDFs with NuGet now: Install IronPDF with NuGet Package Manager PM > Install-Package IronPdf Copy and run this code snippet. IronPdf.AspxToPdf.RenderThisPageAsPdf(); Deploy to test on your live environment Start using IronPDF in your project today with a free trial Free 30 day Trial class="hsg-featured-snippet"> 简化工作流程(5个步骤) 下载 ASPX 至 PDF C# 库 选择您的 ASPX 页面 将 ASPX 文件转换为 PDF 应用 ASPX 至 PDF 转换器设置并添加页眉页脚 在 PDF 文件中创建分页符 如何将 ASPX 文件转换为 PDF ASP.NET 的 Microsoft Web 表单应用程序通常用于开发复杂的网站、在线银行、内联网和会计系统。 ASP.NET (ASPX) 网站的一个常见特性是生成动态 PDF 文件,例如发票、票据或管理报告,供用户下载为 PDF 格式。 本教程展示了如何使用 IronPDF 软件组件为 .NET 将任何 ASP.NET Web 表单转换为 PDF (ASP.NET 到 PDF)。 通常呈现为网页的 HTML 将用于呈现为 PDF 以供下载或在网络浏览器中查看。 附上的源项目将向您展示如何使用 C# 在 ASP.NET 中将网页转换为 PDF。 我们使用 IronPDF 及其 AspxToPdf 类 来实现这种 HTML 到 PDF 的转换(将 ASPX 转换为 PDF)。 1. 从 IronPDF 安装免费的 ASPX 文件转换器 在 Visual Studio 中,右击项目解决方案浏览器并选择“管理 NuGet 包...”。 从此处简单搜索 IronPDF 并安装最新版本... 点击 OK 以响应任何弹出的对话框。 这将在任何从 Framework 4.6.2 及以上或 .NET Core 2 及以上版本的 C# .NET 框架项目中工作。 在 VB.NET 项目中同样有效。 Install-Package IronPdf 从 NuGet 下载 IronPDF 通过 DLL 安装 或者,IronPDF DLL 可以下载并手动安装到项目或 GAC 中下载 IronPDF 包。 请记得在任何 cs 类文件中使用 IronPDF 的顶部添加此声明: using IronPdf; using IronPdf; Imports IronPdf $vbLabelText $csharpLabel 2. 将 ASP.NET 网页转换为 PDF 我们从一个普通的 ASPX "Web 表单" 开始,它渲染为 HTML。 稍后我们将 ASPX 頁面转换为 PDF 文件格式。 在附加的示例源代码中,我们渲染了一张商业发票 "Invoice.aspx",这是一个简单的 HTML 商业发票,作为 ASP.NET 页呈现。 HTML 页包含 CSS3 样式表,并且可能还会包含图像跟 JavaScript。 为了将这个 ASP.NET 网页渲染为 PDF 而不是 HTML,我们需要打开 C#(或 VB.NET)代码并将其添加到 Page_Load 事件中: :path=/static-assets/pdf/content-code-examples/how-to/aspx-to-pdf-1.cs IronPdf.AspxToPdf.RenderThisPageAsPdf(IronPdf.AspxToPdf.FileBehavior.InBrowser); IronPdf.AspxToPdf.RenderThisPageAsPdf(IronPdf.AspxToPdf.FileBehavior.InBrowser) $vbLabelText $csharpLabel 这就是全部所需; 现在 HTML 以 PDF 的形式呈现。 超链接、样式表、图像甚至 HTML 表单都得以保留。 这与如果用户自己在浏览器中将 HTML 打印为 PDF 的输出非常相似。 IronPDF 建立在驱动 Google Chrome 的 Chromium Web 浏览器技术之上。 整个 C# 代码如下所示:在 Active Server Pages 中将 ASPX 页面转换为 PDF。 :path=/static-assets/pdf/content-code-examples/how-to/aspx-to-pdf-2.cs using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; using IronPdf; namespace AspxToPdfTutorial { public partial class Invoice : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { IronPdf.AspxToPdf.RenderThisPageAsPdf(IronPdf.AspxToPdf.FileBehavior.InBrowser); } } } Imports System Imports System.Collections.Generic Imports System.Linq Imports System.Web Imports System.Web.UI Imports System.Web.UI.WebControls Imports IronPdf Namespace AspxToPdfTutorial Partial Public Class Invoice Inherits System.Web.UI.Page Protected Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs) IronPdf.AspxToPdf.RenderThisPageAsPdf(IronPdf.AspxToPdf.FileBehavior.InBrowser) End Sub End Class End Namespace $vbLabelText $csharpLabel 3. 应用 ASPX 文件到 PDF 的转换器设置 当我们使用 .NET Web Forms 生成 ASPX 文件转换为 PDF 时,有许多选项可以调整和完善。 这些选项在网上完整记录在 IronPDF API 参考 中。 3.1. 设置 PDF 文件行为 "InBrowser" 文件行为试图直接在用户的浏览器中显示 PDF。 这并不总是在每个 Web 浏览器中都可以做到,但通常是现代、符合标准的浏览器的一个常见功能。 IronPdf.AspxToPdf.RenderThisPageAsPdf(IronPdf.AspxToPdf.FileBehavior.InBrowser); IronPdf.AspxToPdf.RenderThisPageAsPdf(IronPdf.AspxToPdf.FileBehavior.InBrowser); IronPdf.AspxToPdf.RenderThisPageAsPdf(IronPdf.AspxToPdf.FileBehavior.InBrowser) $vbLabelText $csharpLabel "Attachment" 文件行为导致 PDF 被下载。 IronPdf.AspxToPdf.RenderThisPageAsPdf(IronPdf.AspxToPdf.FileBehavior.Attachment); IronPdf.AspxToPdf.RenderThisPageAsPdf(IronPdf.AspxToPdf.FileBehavior.Attachment); IRON VB CONVERTER ERROR developers@ironsoftware.com $vbLabelText $csharpLabel 3.2. 设置 PDF 文件名 我们还可以通过添加额外参数来设置 PDF 文档的文件名。 这意味着我们可以在用户决定下载或保留时控制文件的名称。 当我们将 ASPX 頁面保存为 PDF 時,这个名称将赋予 PDF 文档。 IronPdf.AspxToPdf.RenderThisPageAsPdf(IronPdf.AspxToPdf.FileBehavior.Attachment, "Invoice.pdf"); IronPdf.AspxToPdf.RenderThisPageAsPdf(IronPdf.AspxToPdf.FileBehavior.Attachment, "Invoice.pdf"); IronPdf.AspxToPdf.RenderThisPageAsPdf(IronPdf.AspxToPdf.FileBehavior.Attachment, "Invoice.pdf") $vbLabelText $csharpLabel 3.3. 更改 PDF 列印选项 我们可以通过添加一个 IronPdf.ChromePdfRenderer 类的实例来控制 PDF 的输出。 ChromePdfRenderer API 参考 :path=/static-assets/pdf/content-code-examples/how-to/aspx-to-pdf-3.cs var AspxToPdfOptions = new IronPdf.ChromePdfRenderOptions() { EnableJavaScript = false, //.. many more options available }; IronPdf.AspxToPdf.RenderThisPageAsPdf(IronPdf.AspxToPdf.FileBehavior.Attachment, "Invoice.pdf", AspxToPdfOptions); Dim AspxToPdfOptions = New IronPdf.ChromePdfRenderOptions() With {.EnableJavaScript = False} IronPdf.AspxToPdf.RenderThisPageAsPdf(IronPdf.AspxToPdf.FileBehavior.Attachment, "Invoice.pdf", AspxToPdfOptions) $vbLabelText $csharpLabel 可用的 PDF 渲染选项包括: CreatePdfFormsFromHtml 将 ASPX 表单元素转换为可编辑的 PDF 表单。 CssMediaType Screen 或 Print CSS 样式和样式表。 查看我们的详细教程及比较图片。 CustomCssUrl 允许在渲染之前在 HTML 上应用自定义 CSS 样式表。 可以是本地文件路径或远程 URL。 EnableMathematicalLaTex 启用或禁用数学 LaTeX 元素的渲染。 EnableJavaScript 启用 JavaScript 和 JSON 在页面渲染前执行。 理想用于从 Ajax / Angular 应用程序打印。 还请参见 WaitFor 教程指南。 Javascript 指定在所有 HTML 加载完毕但在 PDF 渲染之前执行的自定义 JavaScript 字符串。 JavascriptMessageListener 浏览器 JavaScript 控制台消息变得可用时将被调用的方法回调。 FirstPageNumber 第一个页面的页码用于 页眉 和 页脚。 默认值为1。 TableOfContents 在 HTML 文档中包含 id "ironpdf-toc" 的元素位置生成目录。 TextHeader 为每个 PDF 页面设置页脚内容为文本。 支持 'mail-merge' 并自动将 URL 变为超链接。 TextFooter 设置每个 PDF 页面页眉内容为文本。 支持 'mail-merge' 并自动将 URL 变为超链接。 HtmlHeader 使用内容字符串甚至 HTML 设置每个 PDF 页面的页眉内容。 HtmlFooter 使用内容字符串甚至 HTML 设置每个 PDF 页面的页脚内容。 MarginBottom PDF 底部纸张边距以毫米为单位。 设置为0以获取无边界 pdf。 MarginLeft PDF 左侧纸张边距以毫米为单位。 设置为0以获取无边界 pdf。 MarginRight PDF 右侧纸张边距以毫米为单位。 设置为0以获取无边界 pdf。 MarginTop PDF 顶部纸张边距以毫米为单位。 设置为0以获取无边界 pdf。 UseMarginsOnHeaderAndFooter 指定渲染页眉和页脚时是否使用主文档的页边距值。 PaperFit:虚拟纸张布局设置的管理器,控制内容如何在 PDF“纸张”页面上布局。 包括默认 Chrome 行为、放大、响应式 CSS3 布局、缩放到页面和连续供纸式 PDF 页面设置。 PaperOrientation PDF 纸张方向。 横向 或 纵向。 PageRotation 从现有文档旋转页面。 詳細說明和隨附的代碼示例。 PaperSize 使用 System.Drawing.Printing.PaperKind 设置 PDF 页面的输出纸张大小。 SetCustomPaperSizeinCentimeters 将纸张尺寸设置为厘米。 SetCustomPaperSizeInInches 将纸张尺寸设置为英寸。 SetCustomPaperSizeinMilimeters 将纸张尺寸设置为毫米。 SetCustomPaperSizeinPixelsOrPoints 将纸张尺寸设置为屏幕像素或打印点。 ForcePaperSize 指定是否通过在从 HTML 生成 PDF 后调整页面大小来强制页面大小完全符合通过 PaperSize 指定的尺寸。 PrintHtmlBackgrounds 打印 HTML 图像背景。 GrayScale 以灰度输出 PDF,而不是全彩色输出。 WaitFor 是一个包含等待机制配置的包装对象。 这在考虑 JavaScript、Ajax 或动画的渲染时可能有用。 PageLoad:默认渲染,无需等待。 RenderDelay:设置任意等待时间。 Fonts:等待加载所有字体。 JavaScript:使用 JavaScript 函数触发渲染。 HTML elements:等待特定 HTML 元素,如元素 ID、名称、标签名称和查询选择器以定位元素。 NetworkIdle:等待网络空闲(0、2 或自定义数量)。 Title PDF 文档‘标题’元数据。 InputEncoding 输入字符编码为字符串。 UTF-8 是 ASP.NET 的默认值。 RequestContext 指定渲染的请求上下文。 Timeout。 渲染超时以秒为单位。 4. 将页眉和页脚添加到 ASPX PDF 使用 IronPDF 可以将页眉和页脚添加到 PDF 输出中。 最简单的方法是使用 TextHeaderFooter 类,该类支持基本布局,可以轻松添加动态数据,如当前时间和页码。 4.1. ASPX 到 PDF 页眉和页脚示例 :path=/static-assets/pdf/content-code-examples/how-to/aspx-to-pdf-4.cs using IronSoftware.Drawing; using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; namespace AspxToPdfTutorial { public partial class Invoice : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { var AspxToPdfOptions = new IronPdf.ChromePdfRenderOptions() { TextHeader = new IronPdf.TextHeaderFooter() { CenterText = "Invoice", DrawDividerLine = false, Font = FontTypes.Arial, FontSize = 12 }, TextFooter = new IronPdf.TextHeaderFooter() { LeftText = "{date} - {time}", RightText = "Page {page} of {total-pages}", Font = IronSoftware.Drawing.FontTypes.Arial, FontSize = 12, }, }; IronPdf.AspxToPdf.RenderThisPageAsPdf(IronPdf.AspxToPdf.FileBehavior.Attachment, "Invoice.pdf", AspxToPdfOptions); } } } Imports IronSoftware.Drawing Imports System Imports System.Collections.Generic Imports System.Linq Imports System.Web Imports System.Web.UI Imports System.Web.UI.WebControls Namespace AspxToPdfTutorial Partial Public Class Invoice Inherits System.Web.UI.Page Protected Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs) Dim AspxToPdfOptions = New IronPdf.ChromePdfRenderOptions() With { .TextHeader = New IronPdf.TextHeaderFooter() With { .CenterText = "Invoice", .DrawDividerLine = False, .Font = FontTypes.Arial, .FontSize = 12 }, .TextFooter = New IronPdf.TextHeaderFooter() With { .LeftText = "{date} - {time}", .RightText = "Page {page} of {total-pages}", .Font = IronSoftware.Drawing.FontTypes.Arial, .FontSize = 12 } } IronPdf.AspxToPdf.RenderThisPageAsPdf(IronPdf.AspxToPdf.FileBehavior.Attachment, "Invoice.pdf", AspxToPdfOptions) End Sub End Class End Namespace $vbLabelText $csharpLabel 或者,我们可以使用 HtmlHeaderFooter 类生成 HTML 页眉和页脚,该类也支持 CSS、图像和超链接。 :path=/static-assets/pdf/content-code-examples/how-to/aspx-to-pdf-5.cs using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; namespace AspxToPdfTutorial { public partial class Invoice : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { var AspxToPdfOptions = new IronPdf.ChromePdfRenderOptions() { MarginTop = 50, // make sufficiant space for an HTML header HtmlHeader = new IronPdf.HtmlHeaderFooter() { HtmlFragment = "<div style='text-align:right'><em style='color:pink'>page {page} of {total-pages}</em></div>" } }; IronPdf.AspxToPdf.RenderThisPageAsPdf(IronPdf.AspxToPdf.FileBehavior.Attachment, "MyDocument.pdf", AspxToPdfOptions); } } } Imports System Imports System.Collections.Generic Imports System.Linq Imports System.Web Imports System.Web.UI Imports System.Web.UI.WebControls Namespace AspxToPdfTutorial Partial Public Class Invoice Inherits System.Web.UI.Page Protected Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs) Dim AspxToPdfOptions = New IronPdf.ChromePdfRenderOptions() With { .MarginTop = 50, .HtmlHeader = New IronPdf.HtmlHeaderFooter() With {.HtmlFragment = "<div style='text-align:right'><em style='color:pink'>page {page} of {total-pages}</em></div>"} } IronPdf.AspxToPdf.RenderThisPageAsPdf(IronPdf.AspxToPdf.FileBehavior.Attachment, "MyDocument.pdf", AspxToPdfOptions) End Sub End Class End Namespace $vbLabelText $csharpLabel 如我们示例所示,我们可以使用占位符将动态文本或 HTML“合并”到页眉/页脚中: {page}:PDF 的当前页码。 {total-pages}:PDF 文件中的总页码。 {url}:渲染 PDF 文档的网络 URL。 {date}:服务器系统环境适当格式的今天日期。 {time}:基于24小时制的小时:秒时间。 {html-title}:插入 ASPX Web 表单 head 标签中的 标题。 {pdf-title}:文档文件名。 5. 应用 ASPX 文件到 PDF 的技巧:分页符 而 HTML 通常‘流’入一个长页面,而是模拟数字纸张并分为一致的页面的 PDF。 将以下代码添加到您的 ASPX 页面可以自动在 .NET 生成的 PDF 中创建分页符。 :path=/static-assets/pdf/content-code-examples/how-to/aspx-to-pdf-6.cs <div style='page-break-after: always;'> </div> HTML 6. 结合异步和多线程提高性能 IronPDF 是为 .NET Framework 4.6.2,或 .NET Core 2 及以上版本构建的。 在 Framework 4.6.2 或更高版本的项目中,可以利用 异步功能 来提高处理多个文档时的性能。 将异步与多线程 CPU 结合 使用 Parallel.ForEach 命令将显著提高批量 的 PDF 格式处理性能。 7. 观看 ASPX 到 PDF 教程视频 class="tutorial-segment-title">教程快速访问 class="tutorial-section"> class="row"> class="col-sm-8"> 在 GitHub 上探索此教程 这个 C# ASPX-To-PDF 项目的代码可以在 GitHub 上作为 ASP.NET 网站项目以 C# 和 VB.NET 查阅。 请随意在 GitHub 上 fork 我们以获得更多有关如何使用 IronPDF 的帮助。随时分享这个给任何可能询问“如何将 ASPX 转换为 PDF?” 的人。 C# ASPX 到 PDF 网站项目 用于创建PDF的高级ASP.NET页面到PDF范例在C#中 用于创建PDF的VB.NET中的ASP.NET PDF范例 class="col-sm-4"> class="tutorial-image"> 教程快速访问" class="img-responsive add-shadow img-responsive img-popup" src="/img/svgs/github-icon.svg" loading="lazy"> class="tutorial-section"> class="row"> class="col-sm-4"> class="tutorial-image"> 教程快速访问" class="img-responsive add-shadow img-responsive img-popup" src="/img/svgs/html-to-pdf-icon.svg" loading="lazy"> class="col-sm-8"> 下载 C# PDF 快速入门指南 为了使您在 .NET 应用程序中开发 PDF 容易,我们编译了一份快速入门指南作为 PDF 文档。这个“备忘单”提供了常用功能和 C# 与 VB.NET 中生成编辑 PDF 的范例快速入口,并将帮助您节省时间在您的 .NET 项目中开始使用 IronPDF。 下载 class="tutorial-section"> class="row"> class="col-sm-8"> 查看 API 参考 探索 IronPDF 的 API 参考,概述了 IronPDF 的所有功能、命名空间、类、方法、字段和枚举的详细信息。 查看 IronPDF API 参考 class="col-sm-4"> class="tutorial-image"> 教程快速访问" class="img-responsive add-shadow img-responsive img-popup" src="/img/svgs/documentation.svg" loading="lazy"> 常見問題解答 如何在C#中將ASPX頁面轉換為PDF? 要在C#中將ASPX頁面轉換為PDF,使用IronPDF庫。首先,通過NuGet下載IronPDF,然後在您的專案中包含using IronPdf;。在您的ASPX頁面的Page_Load事件中使用IronPdf.AspxToPdf.RenderThisPageAsPdf()方法來執行轉換。 使用IronPDF進行ASPX到PDF轉換的好處有哪些? IronPDF通過允許您將ASPX頁面渲染為PDF而無需手動在網頁瀏覽器中打開,簡化了ASPX到PDF的轉換過程。它支援HTML、CSS和JavaScript,確保所有頁面元素和樣式在PDF中保留。 我可以將自定義的頁眉和頁腳添加到由ASPX頁面生成的PDF中嗎? 是的,使用IronPDF,您可以向PDF添加自定義的頁眉和頁腳。使用TextHeaderFooter或HtmlHeaderFooter類,包括動態內容並根據需要設計您的頁眉和頁腳。 如何優化ASPX在ASP.NET應用程式中的PDF轉換性能? 為了優化性能,IronPDF支援異步PDF轉換和多執行緒處理。這允許同時處理多個文檔,特別是在.NET Framework 4.6.2或更高版本專案中提高效率。 是否可以控制PDF文件行為,如在瀏覽器中打開或下載? 是的,IronPDF允許您通過設置選項如 'InBrowser' 或 'Attachment' 來控制PDF文件行為。這使用戶可以選擇是直接在瀏覽器中打開PDF還是作為附件下載。 設置ASPX到PDF轉換使用IronPDF有哪些步驟? 要設置ASPX到PDF轉換使用IronPDF,首先通過NuGet將IronPDF添加到您的專案中。然後,包含必要的命名空間,並在您的ASPX頁面的Page_Load事件中使用IronPdf.AspxToPdf.RenderThisPageAsPdf()方法來啟動轉換。 是否有資源可用於學習更多關於ASPX到PDF轉換的內容? 是的,有多個資源可用,包括IronPDF API參考、C# PDF快速入門指南和各種視頻教程。這些資源提供深入的信息和範例,幫助開發人員掌握ASPX到PDF轉換。 怎樣確保鏈接和表單在PDF中保留? IronPDF允許您保留元素如鏈接和表單,通過使用完整的HTML、CSS和JavaScript支持來將您的ASPX頁面渲染為PDF。這確保您的動態內容在PDF格式中準確表示。 我可以解決ASPX到PDF轉換的常見問題嗎? 是的,常見的故障排除情況可能涉及檢查是否缺少CSS或JavaScript文件,確保IronPDF設置正確,並驗證您代碼中所有必要的命名空間和方法是否正確實施。 在哪裡可以下載ASPX到PDF轉換專案的源代碼? 使用IronPDF進行ASPX到PDF轉換的源代碼可以下載為壓縮的Visual Studio Web Application專案。此外,您可以在GitHub上查看C#和VB.NET專案的代碼。 Curtis Chau 立即與工程團隊聊天 技術作家 Curtis Chau 擁有卡爾頓大學計算機科學學士學位,專注於前端開發,擅長於 Node.js、TypeScript、JavaScript 和 React。Curtis 熱衷於創建直觀且美觀的用戶界面,喜歡使用現代框架並打造結構良好、視覺吸引人的手冊。除了開發之外,Curtis 對物聯網 (IoT) 有著濃厚的興趣,探索將硬體和軟體結合的創新方式。在閒暇時間,他喜愛遊戲並構建 Discord 機器人,結合科技與創意的樂趣。 準備好開始了嗎? Nuget 下載 16,154,058 | 版本: 2025.11 剛剛發布 免費 NuGet 下載 總下載量:16,154,058 查看許可證