在 C## ASP.NET 中将 ASPX 页转换为 PDF.
使用 IronPDF 的 `` 方法,通过 C# 将 ASPX 页面转换为 PDF,该方法可即时将任何 ASP.NET Web 表单转换为可下载的 PDF 文档,同时保留样式、链接和表单。 无论是生成发票、报告还是文档,这种方法都能确保使用 基于 Chrome 的渲染技术进行像素级完美渲染。
本教程将指导您逐步完成 ASPX 到 PDF 的转换。 在 ASP.NET 网络应用程序中将 ASPX 页面保存为 PDF,并完全控制 页眉、页脚 和页面格式。
使用 .NET 代码自动将 ASPX 文件转换为 PDF,无需手动进行浏览器打印。 这种基于服务器的方法可转换 ASPX 内容,并使用 IronPDF 的渲染功能将其保存为 PDF。
应用设置,包括文件行为和名称、添加页眉和页脚、更改打印选项、添加分页符、结合异步和多线程等。 IronPDF 支持高级功能,如PDF/A 合规性和数字签名,以满足企业要求。
快速入门:秒速将 ASPX 转换为 PDF
立即开始使用 IronPDF,轻松将 ASPX 文件转换为 PDF 文件。 这个快速示例演示了只需一行代码就能将 ASPX 页面直接呈现为 PDF 文档。 非常适合希望简化工作流程并增强 ASP.NET 应用程序的开发人员。
如何将 ASPX 文件转换为 PDF?
Microsoft Web Form Applications for ASP.NET 通常用于开发复杂的网站、网上银行、内联网和会计系统。 ASP.NET (ASPX) 网站的一个常见功能是生成动态 PDF 文件,如发票、票据或管理报告,供用户下载。
本教程展示了如何使用 IronPDF 将任何 ASP.NET 网页表单转化为 PDF(ASP.NET to PDF)。 通常以网页形式呈现的 HTML 将以 PDF 形式呈现,以供下载或在网络浏览器中查看。 所附源代码项目演示了在 ASP.NET 中使用 C# 将网页转换为 PDF。
我们通过 IronPDF 及其 AspxToPdf 类(/object-reference/api/IronPdf.AspxToPdf.html)渲染网页时,实现了 HTML 到 PDF 的转换。 此过程将在生成的 PDF 中保留所有 CSS样式、JavaScript 功能,甚至 网络字体。
如何安装 IronPDF 的 ASPX 文件转换器?
在 Visual Studio 中,右键单击您的项目解决方案资源管理器并选择"管理 NuGet 包..."。 从那里搜索 IronPDF 并安装最新版本。 单击 "确定 "对话框。
这适用于 Framework 4.6.2 及以上版本或 .NET Core 2 及以上版本的任何 C# .NET Framework 项目。 它也适用于 VB.NET 项目。 有关不同平台的详细安装说明,请查看我们的安装概述指南。
Install-Package IronPdf
何时应通过 DLL 而不是 NuGet 进行安装?
或者,从 下载 IronPDF Package 下载 IronPDF DLL 并手动安装到项目或 GAC 中。 有关特定于 Windows 的安装,请参阅我们的 Windows安装指南。
请务必在使用 IronPDF 的任何 `` 类文件顶部添加以下声明:
using IronPdf;
using IronPdf;
Imports IronPdf
如何将 ASP.NET 网页转换为 PDF?
从一个普通的 ASPX "Web表单 "开始,该表单渲染为HTML。 之后将 ASPX 页面转换为 PDF 文件格式。
在所附示例源代码中,我们渲染了一个名为"Invoice.aspx"的商业发票,这是一个简单的 HTML 商业发票,以 ASP.NET 页面的形式呈现。 对于涉及 身份验证和 cookies 的更复杂的情况,IronPDF 可提供全面的解决方案。
HTML 页面包含 CSS3 样式表,还可能包含图片和 JavaScript。 IronPDF 支持 渲染前执行 JavaScript,确保准确捕捉动态内容。
若要将此 ASP.NET 网页渲染为 PDF 而非 HTML,请打开 C#(或 VB.NET)代码,并在 `` 事件中添加以下代码:
: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)
这就是全部所需条件; 现在HTML会渲染成PDF。 超链接、样式表、图片甚至 HTML 表单都要保留。 这类似于用户在浏览器中将 HTML 打印成 PDF 的输出结果。 IronPDF 基于 Chromium 网络浏览器技术构建,该技术也是 Google Chrome 浏览器的基础。
完整的 C# 代码如下所示:
: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
如何将 ASPX 文件应用到 PDF 转换器设置?
使用 .NET Web Forms 从 ASPX 文件生成 PDF 时,有许多调整和完善的选择。 这些设置控制着从纸张大小到边距配置的一切。
这些选项在IronPDF API 参考文档中有完整的在线说明。
如何控制 PDF 显示行为?
"``" 文件行为旨在直接在用户的浏览器中显示 PDF。 这是符合标准的现代浏览器的共同特点。
IronPdf.AspxToPdf.RenderThisPageAsPdf(IronPdf.AspxToPdf.FileBehavior.InBrowser);
IronPdf.AspxToPdf.RenderThisPageAsPdf(IronPdf.AspxToPdf.FileBehavior.InBrowser);
IronPdf.AspxToPdf.RenderThisPageAsPdf(IronPdf.AspxToPdf.FileBehavior.InBrowser)
"``" 文件行为会导致 PDF 被下载。
IronPdf.AspxToPdf.RenderThisPageAsPdf(IronPdf.AspxToPdf.FileBehavior.Attachment);
IronPdf.AspxToPdf.RenderThisPageAsPdf(IronPdf.AspxToPdf.FileBehavior.Attachment);
IronPdf.AspxToPdf.RenderThisPageAsPdf(IronPdf.AspxToPdf.FileBehavior.Attachment)
如何自定义 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")
我可以配置哪些 PDF 打印选项?
通过添加 `` 类的实例来控制 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)
可用的PDF渲染选项包括:
- ``:将 ASPX 表单转换为可编辑的 PDF 表单。 请参见 创建 PDF 表单。
:或PRINTCSS 样式。 请参见 比较图片。- ``:在渲染前对 HTML 应用自定义 CSS。 本地文件路径或远程 URL。
- ``:启用/禁用 LaTeX 元素的渲染。
- ``:在渲染前执行 JavaScript。 非常适合 Ajax/Angular 应用程序。请参见 WaitFor指南。
- ``:在 HTML 加载完成但渲染开始前执行的自定义 JavaScript 代码。
- ``:用于处理浏览器 JavaScript 控制台消息的回调函数。
- ``:页眉/页脚的起始页码。 默认为 1。
- ``:在 ID 为 "IronPDF-toc" 的元素处生成目录。 请参见 TOC 指南。
- ``:将标题内容设置为文本。 支持邮件合并和自动链接 URL。
- ``: 将页脚内容设置为文本。 支持邮件合并和自动链接 URL。
- ``:使用 HTML 设置页眉内容。
- ``:使用 HTML 设置页脚内容。
- ``:底部边距(单位:毫米)。 零为无国界。
- ``:左边距(单位:毫米)。 零为无国界。
- ``:右边距(单位:毫米)。 零为无国界。
- ``:顶部边距(单位:毫米)。 零为无国界。
- ``:在页眉/页脚中使用主文档的页边距。
- ``:虚拟纸张布局管理器。 包括 Chrome 浏览器行为、缩放、响应式 CSS3、按页面缩放和连续供稿等选项。 请参见 视口指南。
- ``:PDF 方向 - 横向或纵向。
- ``:旋转现有文档中的页面。 请参见 定向示例。
- ``:使用 System.Drawing.Printing.PaperKind 输出纸张尺寸。
- ``: 以厘米为单位设置纸张尺寸。
- ``:以英寸为单位设置纸张尺寸。
- ``: 以毫米为单位设置纸张尺寸。
- ``:以像素或点为单位设置纸张尺寸。
- ``:通过生成后调整尺寸来强制使用精确的纸张尺寸。
- ``:PRINT HTML 图像背景。
- ``:输出灰度 PDF。 请参见 灰度转换。
- ``:等待机制的配置:
- ``:不等待的默认渲染。
- ``:任意等待时间。
- ``:等待字体加载。
- ``:使用 JavaScript 函数触发渲染。
HTML 元素:根据 ID、名称、标签或选择器等待特定元素。- ``:等待网络空闲(0、2 或自定义)。
- ``:PDF 文档标题元数据。 请参见 元数据指南。
- ``:字符编码。 默认为 UTF-8。 请参见 UTF-8指南。
- ``:渲染的请求上下文。
- ``:以秒为单位的渲染超时时间。
如何为 ASPX PDF 添加页眉和页脚?
使用 IronPDF,可以在 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
或者,使用 `` 类生成 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
如我们的示例所示,使用占位符将动态文本或 HTML 合并到页眉/页脚中:
- ``:当前页码。
- ``:总页数。
- ``:生成该 PDF/A 的网页 URL。
- ``:以系统格式显示的当前日期。
- ``:24 小时制时间。
- ``:来自 ASPX 头部标签的标题。
- ``:文档文件名。
如何在 PDF 文件中添加分页符?
HTML 通常是长长的一页,而 PDF 则是模拟数字纸张,分成连贯的几页。 将此代码添加到 ASPX 页面后,生成的 PDF 将自动创建分页符。 有关高级分页控制,请参阅我们的分页指南。
<div style='page-break-after: always;'> </div>
<div style='page-break-after: always;'> </div>
如何使用异步和多线程提高性能?
IronPDF 适用于 .NET Framework 4.6.2 或 .NET Core 2 及以上版本。 在 Framework 4.6.2 或以上版本的项目中,async 功能 可提高处理多个文档时的性能。
将异步技术与多线程 CPU 结合使用,并配合 `` 命令,可显著提升批量 PDF/A 处理效率。 对于企业部署,请参阅我们的性能优化指南。
在哪里可以观看 ASPX 转 PDF 教程视频?
教程快速访问
在 GitHub 上探索此教程
此 C# ASPX-To-PDF 项目的代码以 C# 和 VB.NET 作为 ASP.NET 网站项目在 GitHub 上提供。请继续在 GitHub 上 fork 我们,以获得更多使用 IronPDF 的帮助。如果有人问 "如何将 ASPX 转换为 PDF?
C# ASPX 转 PDF 网站项目 用 C# 创建 PDF 的高级 ASP.NET Page to PDF 示例 用 VB.NET 创建 PDF 的 ASP.NET PDF 示例下载 C# PDF 快速入门指南
为了让您在 .NET 应用程序中开发 PDF 更容易,我们将快速入门指南编译成 PDF 文档。这份 "Cheat-Sheet "提供了在 C# 和 VB.NET 中快速访问生成和编辑 PDF 的常用函数和示例,有助于节省在您的 .NET 项目中开始使用 IronPDF 的时间。
下载常见问题解答
如何在 C# 中将 ASPX 页面转换为 PDF?
您可以使用 IronPDF 的 AspxToPdf.RenderThisPageAsPdf() 方法在 C# 中将 ASPX 页面转换为 PDF。只需一行代码,即可将任何 ASP.NET 网页表单立即转换为可下载的 PDF 文档,同时保留所有样式、链接和表单。
ASPX 到 PDF 的转换使用什么渲染技术?
IronPDF 使用基于 Chrome 浏览器的渲染技术,确保从 ASPX 页面生成像素完美的 PDF。这种基于服务器的方法可在生成的 PDF 中保留所有 CSS 样式、JavaScript 功能和网络字体。
将 ASPX 转换为 PDF 时能否添加页眉和页脚?
是的,在将 ASPX 文件转换为 PDF 时,IronPDF 可完全控制页眉、页脚和页面格式。您可以自定义这些元素以及其他设置,如分页符和打印选项。
ASPX 转换为 PDF 是否需要浏览器手动打印?
不,IronPDF 可使用 .NET 代码自动将 ASPX 内容转换为 PDF,无需任何手动浏览器打印。整个转换过程使用 IronPDF 的渲染功能在服务器端进行。
将 ASPX 转换为 PDF 时支持哪些企业功能?
IronPDF 支持先进的企业功能,包括用于长期存档的 PDF/A 合规性,以及将 ASPX 页面转换为 PDF 时用于文档验证的数字签名。
我可以从 ASPX 页面生成哪些类型的文档?
IronPDF 通常用于从 ASPX 页面生成动态 PDF 文件,如发票、票据、管理报告、文档和其他业务文档,用户可以在 Web 浏览器中下载或查看。

