使用Spire.dll ,将html转换成PDF文件
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Spire.Pdf;
using Spire.Pdf.HtmlConverter;
using System.Drawing;
using System.Threading;
using System.IO;
namespace ConvertUrlToPdf
{
class Program
{
static void Main(string[] args)
{
//创建PdfDocument对象
PdfDocument doc = new PdfDocument();
//创建PdfPageSettings对象
PdfPageSettings setting = new PdfPageSettings();
//设置页面大小及边距
setting.Size = new SizeF(1000, 1000);
setting.Margins = new Spire.Pdf.Graphics.PdfMargins(20);
//创建PdfHtmlLayoutFormat对象
PdfHtmlLayoutFormat htmlLayoutFormat = new PdfHtmlLayoutFormat();
//等待直至HTML内容完全加载
htmlLayoutFormat.IsWaiting = true;
//获取URL地址
string url = "http://www.e-iceblue.cn/";
//获取HTML代码
//string htmlCode = File.ReadAllText(@"C:\Users\Administrator\Desktop\sample.html");
//使用LoadFromHTML方法加载URL
Thread thread = new Thread(() =>
{ doc.LoadFromHTML(url, false, false, false, setting, htmlLayoutFormat); });
thread.SetApartmentState(ApartmentState.STA);
thread.Start();
thread.Join();
//保存并打开文档
doc.SaveToFile("output.pdf");
System.Diagnostics.Process.Start("output.pdf");
}
}
}