
你有没有想过如何在 C# 中将 HTML 转换为 PDF?如果您是一名开发人员,并且您需要创建一个在屏幕上可读且还可以打印的文档,那么将 HTML 转换为 PDF 将是解决您问题的理想解决方案。您可以将本文用作有关如何在 C# 中将 HTML 准确转换为 PDF 的分步指南。您会发现详细的步骤和代码片段可以帮助您非常轻松地解决此问题。
HTML(超文本标记语言)是一种允许创建网页的标记语言。一个 HTML 页面由 HTML 元素组成,包括表单、文本、图像、动画、链接等。标记代表这些元素之一,然后是其他几个元素。每个标签都有开始和结束。对于整体布局表示,它还可以嵌入用 JavaScript 或样式表 (CSS) 编写的脚本。我们可以通过编程方式将网页转换并保存为 PDF 文档。我们可以放入 PDF 文件的信息量没有限制。我们可以包括文本、图像、超链接、表单字段、富媒体、数字签名、附件、元数据、地理空间特征和 3D 对象。
将 HTML 转换为 PDF 允许以可移植格式保存网站或其他独立的 HTML 网页或将它们打印出来。因此,请继续阅读有关如何在 C# 中将 HTML 转换为 PDF 的详细步骤。
本文应涵盖以下主题:
HTML 到 PDF 转换器 C# API
为了将 HTML 转换为 PDF,我们将使用 Aspose.HTML for .NET API。 API 允许创建 HTML 文档。它还允许从 HTML 文档中修改和提取数据。此外,它使您无需任何外部软件即可转换和呈现 HTML 文档。
API 提供了 HTMLDocument 类,代表我们在浏览器中看到的 HTML 文档或网页。 API 的 PdfSaveOptions 类允许在另存为 PDF 时指定各种保存选项。我们可以使用 Converter 类转换 supported formats。它提供了广泛的流行格式转换,例如 PDF、XPS、图像格式等。它提供了 ConvertHTML() 方法将 HTML 转换为其他格式。
请 下载 API 的 DLL 或使用 NuGet 安装它。
PM> Install-Package Aspose.Html
使用 C# 将 HTML 转换为 PDF
我们可以按照以下步骤轻松地将任何 HTML 文件转换为 PDF 文档:
- 首先,使用 HTMLDocument 类加载 HTML 文档。
- 接下来,创建 PdfSaveOptions 类的实例。
- 最后,调用 Converter.ConvertHTML() 方法。它以 HTMLDocument、PdfSaveOptions 和输出 PDF 文件路径作为参数。
以下代码示例显示了如何在 C# 中将 HTML 文件转换为 PDF 文档。
// 此代码示例演示如何将 HTML 文件转换为 PDF 文档。
// 加载输入 HTML 文件
var document = new HTMLDocument(@"C:\Files\sample.html");
// 初始化 PdfSaveOptions
var options = new PdfSaveOptions();
// 将 HTML 转换为 PDF
Converter.ConvertHTML(document, options, @"C:\Files\output.pdf");

使用 C# 将 HTML 转换为 PDF
使用 C# 中的保存选项将 HTML 转换为 PDF
我们可以按照以下步骤设置各种额外的保存选项,专门用于将 HTML 文件保存为 PDF 文档:
- 首先,使用 HTMLDocument 类加载 HTML 文档。
- 接下来,创建 PdfSaveOptions 类的实例。
- 之后,指定保存选项,例如 HorizontalResolution、VerticalResolution、BackgroundColor 等。
- 最后,调用 Converter.ConvertHTML() 方法将 HTML 文件转换为 PDF。
以下代码示例显示了如何使用 C# 中的其他选项将 HTML 文件转换为 PDF。
// 此代码示例演示如何使用保存选项将 HTML 文件转换为 PDF 文档。
// 加载输入 HTML 文件
var document = new HTMLDocument(@"C:\Files\sample.html");
// 初始化 PdfSaveOptions
// 设置分辨率并将背景颜色更改为卡其色
var options = new PdfSaveOptions();
options.HorizontalResolution = 200;
options.VerticalResolution = 200;
options.JpegQuality = 100;
options.BackgroundColor = System.Drawing.Color.Khaki;
// 设置页面大小和边距
options.PageSetup.AnyPage = new Page(new Aspose.Html.Drawing.Size(600, 800), new Margin(10, 10, 10, 10));
// 将 HTML 转换为 PDF
Converter.ConvertHTML(document, options, @"C:\Files\output_saveOptions.pdf");

使用 C# 中的保存选项将 HTML 转换为 PDF
在 C# 中将 HTML 字符串导出为 PDF
我们还可以按照以下步骤将 HTML 字符串转换为 PDF 文档:
- 首先,定义一个 HTML 字符串
- 接下来,创建 PdfSaveOptions 类的实例。
- 或者,定义保存选项。
- 最后,调用 Converter.ConvertHTML() 方法将 HTML 字符串转换为 PDF。它以 HTML 字符串、PdfSaveOptions 和输出 PDF 文件路径作为参数。
以下代码示例显示了如何在 C# 中将 HTML 字符串转换为 PDF 文档。
// 此代码示例演示如何将 HTML 字符串转换为 PDF 文档。
// 定义 HTML 字符串
string htmlString = @"<style>
.st
{
color: green;
}
</style>
<div id=id1>Aspose.Html rendering Text in Black Color</div>
<div id=id2 class=''st''>Aspose.Html rendering Text in Green Color</div><div id=id3 class=''st'' style='color: blue;'>Aspose.Html rendering Text in Blue Color</div>
<div id=id3 class=''st'' style='color: red;'><font face='Arial'>Aspose.Html rendering Text in Red Color</font></div>";
// 初始化 PdfSaveOptions
var options = new PdfSaveOptions();
// 调用 ConvertHTML 方法将 HTML 代码转换为 PDF
Converter.ConvertHTML(htmlString, ".", options, @"C:\Files\HtmlStringToPdf.pdf");

在 C# 中将 HTML 字符串导出为 PDF
在 C# 中将 HTML 从 Live URL 转换为 PDF
我们还可以按照以下步骤将实时 URL 中的任何网页保存为 PDF 文档:
- 首先,使用网页的 URL 创建 Url 类的实例。
- 接下来,创建 PdfSaveOptions 类的实例。
- 或者,定义保存选项。
- 最后,使用 Converter.ConvertHTML() 方法将 HTML 保存为 PDF。它以 Url、PdfSaveOptions 和输出 PDF 文件路径作为参数。
以下代码示例展示了如何使用 C# 将 Live URL 的 HTML 转换为 PDF。
// 此代码示例演示如何将 HTML 从实时 网址 转换为 PDF 文档。
// 网址
Url url = new Url("https://docs.aspose.com/html/net/");
// 初始化 PdfSaveOptions
var options = new PdfSaveOptions();
// 将 HTML 代码转换为 PDF
Converter.ConvertHTML(url, options, @"C:\Files\outputFrom网址.pdf");

在 C# 中将 HTML 从 Live URL 转换为 PDF
获得免费许可证
您可以获得免费的临时许可证 试用 Aspose.HTML for .NET,没有评估限制。
结论
在本文中,我们学习了如何:
- 载入一个 HTML 文件;
- 指定 PDF 保存选项;
- 在 C# 中将 HTML 从文件、字符串或实时网页转换为 PDF。
除了在 C# 中将 HTML 转换为 PDF 之外,您还可以使用 文档 了解有关 Aspose.HTML for .NET API 的更多信息。如有任何疑问,请随时通过我们的免费支持论坛与我们联系。