推薦一個可以將Html頁面轉(zhuǎn)為PDF的開源項(xiàng)目。
這是一個基于.Net開發(fā)的開源項(xiàng)目,本質(zhì)是用 Webkit 引擎將 HTML 頁面轉(zhuǎn)換為 PDF,可以用在控制臺、 Web 應(yīng)用程序和 Web API中。
1、創(chuàng)建轉(zhuǎn)化器
//同步轉(zhuǎn)化器
var converter = new BasicConverter(new PdfTools());
//異步轉(zhuǎn)化器
var converter = new SynchronizedConverter(new PdfTools());
在多線程程序和 Web 服務(wù)器中可以使用異步轉(zhuǎn)換器,避免轉(zhuǎn)換任務(wù)阻塞其他線程。var doc = new HtmlToPdfDocument()
{
GlobalSettings = {
ColorMode = ColorMode.Color,
Orientation = Orientation.Landscape,
PaperSize = PaperKind.A4Plus,
},
Objects = {
new ObjectSettings()
{
PagesCount = true,
HtmlContent = @"<h1>標(biāo)題1</h1> 內(nèi)容內(nèi)容內(nèi)容內(nèi)容內(nèi)容內(nèi)容內(nèi)容內(nèi)容內(nèi)容內(nèi)容",
WebSettings = { DefaultEncoding = "utf-8" },
HeaderSettings = { FontSize = 9, Right = "Page [page] of [toPage]", Line = true, Spacing = 2.812}
}
}
}
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);
}
該文章在 2024/1/23 12:33:46 編輯過