推荐一个可以将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 = @"标题1 内容内容内容内容内容内容内容内容内容内容", 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
领取专属 10元无门槛券
私享最新 技术干货