【发布时间】:2019-08-11 08:08:45
【问题描述】:
【问题讨论】:
标签: html pdf-generation nuget-package dinktopdf
【问题讨论】:
标签: html pdf-generation nuget-package dinktopdf
虽然它并不完美,但使用以下设置:
var globalSettings = new GlobalSettings
{
ColorMode = ColorMode.Color,
Orientation = Orientation.Portrait,
PaperSize = PaperKind.A4,
Margins = new MarginSettings { Top = 10 },
DocumentTitle = "PDF Report"
};
var objectSettings = new ObjectSettings
{
PagesCount = true,
HtmlContent = html.ToString(),
//Page = "https://code-maze.com/", USE THIS PROPERTY TO GENERATE PDF CONTENT FROM AN HTML PAGE
WebSettings = { DefaultEncoding = "utf-8" }, //, UserStyleSheet = Path.Combine(Directory.GetCurrentDirectory(), "assets", "styles.css") },
HeaderSettings = { FontName = "Arial", FontSize = 9, Right = "Page [page] of [toPage]", Line = true },
FooterSettings = { FontName = "Arial", FontSize = 9, Line = true, Center = "Report Footer" }
};
我可以使用带有一系列DIVs 设置的 HTML 文件,以使它们分别适应 1 个页面大小:
<div style="height: 1308px; overflow:hidden;">
【讨论】:
我正在使用https://github.com/rdvojmoc/DinkToPdf NuGet; 我们可以使用 CSS 样式控制分页
table {
page-break-inside: auto
}
tr {
/*page-break-inside: avoid;*/
page-break-after: always;
display: table-row-group;
}
thead {
display: table-header-group;
}
tfoot {
display: table-footer-group;
display: table-row-group;
}
【讨论】: