在浏览各种网站时,您可能希望将网页的 HTML 内容下载为 PDF 文件以供日后使用。在这种情况下,您需要一个多合一转换器来正确地将您的内容从 HTML 转换为 PDF。作为 C# 开发人员,我们可以轻松地将 HTML 内容从 HTML 文件转换为 PDF 文档。我们还可以从 HTML 字符串生成 PDF 文档,或从实时 URL 将网页另存为 PDF。在本文中,我们将学习如何在 C# 中从 HTML 生成 PDF。
本文将涵盖以下主题:
C# API 从 HTML 生成 PDF
要从 HTML 文件生成 PDF 文档,我们将使用 Aspose.HTML for .NET API。它是一种高级 HTML 处理 API,允许从 HTML 文档中创建、修改和提取数据。它还允许在没有任何外部软件的情况下转换和呈现 HTML 文档。
API 的 HTMLDocument 类表示我们在浏览器中看到的 HTML 文档或网页。 PdfSaveOptions 类允许在另存为 PDF 时指定各种保存选项。我们有 Converter 类,它提供了对流行格式的广泛转换,例如 PDF、XPS、图像格式等。它提供了 ConvertHTML() 方法将 HTML 转换为其他格式格式。
PM> Install-Package Aspose.Html
在 C# 中从 HTML 生成 PDF 文档
我们可以按照以下步骤轻松地从 HTML 文件生成 PDF 文档:
- 首先,使用 HTMLDocument 类加载一个 HTML 文档。
- 接下来,创建 PdfSaveOptions 类的实例。
- 最后,调用 Converter.ConvertHTML() 方法生成 PDF。它将 HTMLDocument、PdfSaveOptions 和输出 PDF 文件路径作为参数。
以下代码示例展示了如何使用 C# 从 HTML 文件生成 PDF 文档。
// 此代码示例演示如何从 HTML 文件生成 PDF 文档。
// 输入 HTML 文件路径
string documentPath = @"C:\Files\sample.html";
// 输出PDF文件路径
string savePath = Path.Combine(@"C:\Files\output.pdf");
// 加载输入 HTML 文件
var document = new HTMLDocument(documentPath);
// 初始化 PdfSaveOptions
var options = new PdfSaveOptions();
// 将 HTML 转换为 PDF
Converter.ConvertHTML(document, options, savePath);
使用 C# 中的保存选项将 HTML 转换为 PDF
我们可以按照以下给出的步骤从带有附加保存选项的 HTML 文件生成 PDF 文档:
- 首先,使用 HTMLDocument 类加载一个 HTML 文档。
- 接下来,创建 PdfSaveOptions 类的实例。
- 之后,指定保存选项,例如 HorizontalResolution、VerticalResolution 等。
- 最后,调用 Converter.ConvertHTML() 方法生成 PDF。
以下代码示例展示了如何使用 C# 中的附加选项从 HTML 文件生成 PDF。
// 此代码示例演示如何使用保存选项从 HTML 文件生成 PDF 文档。
// 输入 HTML 文件路径
string documentPath = @"C:\Files\sample.html";
// 输出PDF文件路径
string savePath = Path.Combine(@"C:\Files\output.pdf");
// 加载输入 HTML 文件
var document = new HTMLDocument(documentPath);
// 初始化 PdfSaveOptions。
// 设置页面大小、边距、分辨率并将背景颜色更改为 AliceBlue
var options = new PdfSaveOptions()
{
HorizontalResolution = 200,
VerticalResolution = 200,
JpegQuality = 100,
BackgroundColor = Color.AliceBlue
};
options.PageSetup.AnyPage = new Page(new Aspose.Html.Drawing.Size(600, 300), new Margin(20, 10, 10, 10));
// 将 HTML 转换为 PDF
Converter.ConvertHTML(document, options, savePath);
在 C# 中从 HTML 字符串生成 PDF
我们还可以按照以下步骤从 HTML 字符串生成 PDF 文档:
- 首先,创建 PdfSaveOptions 类的实例。
- (可选)定义保存选项。
- 最后,调用 Converter.ConvertHTML() 方法生成 PDF。它以 HTML 字符串、PdfSaveOptions 和输出 PDF 文件路径作为参数。
以下代码示例展示了如何使用 C# 从 HTML 字符串生成 PDF。
// 此代码示例演示如何从 HTML 字符串生成 PDF 文档。
string htmlString = @"<h1>Convert HTML to PDF!</h1><br/><h2>This is Sample Heading!</h2><p>This is first paragraph.</p>";
// 初始化 PdfSaveOptions
var options = new PdfSaveOptions();
// 调用 ConvertHTML 方法将 HTML 代码转换为 PDF
Converter.ConvertHTML(htmlString, ".", options, @"C:\Files\HtmlStringToPdf.pdf");
在 C# 中从 Live URL 生成 PDF
在上一节中,我们已经了解了如何从 HTML 字符串生成 PDF。我们还可以按照以下步骤将网页从 URL 保存到 PDF 文档:
- 首先,使用网页的 URL 创建一个 Url 类的实例。
- 接下来,创建 PdfSaveOptions 类的实例。
- (可选)定义保存选项。
- 最后,使用 Converter.ConvertHTML() 方法将 HTML 保存为 PDF。它将 Url、PdfSaveOptions 和输出 PDF 文件路径作为参数。
以下代码示例展示了如何使用 C# 从 Live URL 生成 PDF。
// 网址
Url url = new Url("https://docs.aspose.com/diagram/net/");
// 初始化 PdfSaveOptions
var options = new PdfSaveOptions();
// 将 HTML 代码转换为 PDF
Converter.ConvertHTML(url, options, @"C:\Files\outputFrom网址.pdf");
获得免费许可证
您可以获得免费的临时许可证 试用 Aspose.HTML for .NET,而不受评估限制。
结论
在本文中,我们学习了如何:
- 以编程方式加载 HTML 文件;
- 定义 PDF 保存选项;
- 将 HTML 字符串另存为 PDF;
- 将网页另存为 PDF 文档;
- 在 C# 中将 HTML 文件转换为 PDF。
除了在 C# 中从 HTML 生成 PDF,您还可以使用 documentation 了解更多关于 Aspose.HTML for .NET API 的信息。如有任何歧义,请随时在我们的 免费支持论坛 上与我们联系。