推荐一个可以将Html页面转为PDF的开源项目。
01项目简介
这是一个基于.Net开发的开源项目,本质是用 Webkit 引擎将 HTML 页面转换为 PDF,可以用在控制台、 Web 应用程序和 Web API中。
02使用示例
1、创建转化器
//同步转化器
var converter = new BasicConverter(new PdfTools());
//异步转化器
var converter = new SynchronizedConverter(new PdfTools());
在多线程程序和 Web 服务器中可以使用异步转换器,避免转换任务阻塞其他线程。2、定义文档格式
var doc = new HtmlToPdfDocument()
{
GlobalSettings = {
ColorMode = ColorMode.Color,
Orientation = Orientation.Landscape,
PaperSize = PaperKind.A4Plus,
},
Objects = {
new ObjectSettings() {
PagesCount = true,
HtmlContent = @"<h1>标题1</h1>
内容内容内容内容内容内容内容内容内容内容",
WebSettings = { DefaultEncoding = "utf-8" },
HeaderSettings = { FontSize = 9, Right = "Page [page] of [toPage]", Line = true, Spacing = 2.812 }
}
}
}
3、转换
byte[] pdf = converter.Convert(doc);
if (!Directory.Exists("Files"))
{
Directory.CreateDirectory("Files");
}
using (FileStream stream = new FileStream(@"Files" + DateTime.UtcNow.Ticks.ToString() + ".pdf", FileMode.Create))
{
stream.Write(pdf, 0, pdf.Length);
}
效果如下:
03项目地址
https://github.com/rdvojmoc/DinkToPdf
声明:文中观点不代表本站立场。本文传送门:https://eyangzhen.com/391140.html