世俱杯 2025

logo E-iceblue中文文档
文档世俱杯 2025>>E-iceblue中文文档>>用C#将HTML字符串转换为PDF

用C#将HTML字符串转换为PDF


Spire.PDF for .NET 是一款专门对 Word 文档进行操作的 .NET 类库。致力于在于帮助开发人员轻松快捷高效地创建、编辑、转换和打印 Microsoft Word 文档,而无需安装 Microsoft Word。

行号用于在每行文本旁边显示 Word 自动计算的行数。当我们需要参考合同或法律文件等文档中的特定行时,它非常有用。word中的行号功能允许我们设置起始值、编号间隔、与文本的距离以及行号的编号方式。使用 Spire.Doc,我们可以实现上述所有功能。本文将介绍如何将文本文件转换为 PDF

Spire.PDF for.NET 最新下载

欢迎加入spire技术交流群:767755948

除了转换HTML URL为PDF和HTML文件为PDF,现在Spire.PDF开始支持转换HTML字符串为PDF。本文将向您展示如何在C#中将HTML字符串转换为PDF文件。我们支持HTML字符串中的表格、文本和超链接。请检查以下步骤:

  • 下载Spire.PDF for .NET(3.0.27以上版本)并正确安装。Spire.PDF安装简洁、专业,并使用MSI安装包。
  • 在下载的Bin文件夹中添加Spire.Pdf.dll作为参考,路径如下:"...\Spire.Pdf\Bin\NET4.0\Spire.Pdf.dll"。
  • 下面是代码

步骤1:创建一个新的PDF文档。

1    PdfDocument pdf = new PdfDocument();

第2步:设置布局和页面设置。

1    PdfHtmlLayoutFormat htmlLayoutFormat = new PdfHtmlLayoutFormat();
2    //webBrowser load html whether Waiting
3    htmlLayoutFormat.IsWaiting = false;
4    //page setting
5    PdfPageSettings setting = new PdfPageSettings();
6    setting.Size = PdfPageSize.A4;

第3步:加载HTML字符串代码并生成PDF文件。

1    string htmlCode = File.ReadAllText("..\\..\\2.html");
2
3    //use single thread to generate the pdf from above html code
4    Thread thread = new Thread(() =>
5    { pdf.LoadFromHTML(htmlCode, false, setting, htmlLayoutFormat);});
6    thread.SetApartmentState(ApartmentState.STA);
7    thread.Start();
8    thread.Join();

第4步:将文件保存为PDF格式并预览。

1    pdf.SaveToFile("output.pdf");
2    System.Diagnostics.Process.Start("output.pdf");

请查看有效截图:

完整代码:

using Spire.Pdf;

using Spire.Pdf.HtmlConverter;

using System.IO;

using System.Threading;

namespace LoadFromHTML

{

class Program

{

static void Main(string[] args)

{

PdfDocument pdf = new PdfDocument();

PdfHtmlLayoutFormat htmlLayoutFormat = new PdfHtmlLayoutFormat();

htmlLayoutFormat.IsWaiting = false;

PdfPageSettings setting = new PdfPageSettings();

setting.Size = PdfPageSize.A4;

string htmlCode = File.ReadAllText("..\\..\\2.html");

Thread thread = new Thread(() =>

{ pdf.LoadFromHTML(htmlCode, false, setting, htmlLayoutFormat); });

thread.SetApartmentState(ApartmentState.STA);

thread.Start();

thread.Join();

pdf.SaveToFile("output.pdf");

System.Diagnostics.Process.Start("output.pdf");

}

}

}
扫码咨询


添加微信 立即咨询

电话咨询

客服热线
023-68661681

TOP