使用 NReco HTML-to-PDF C# 更改 ToC 字体系列和大小

Change ToC Font-Family and Size Using NReco HTML-to-PDF C#

我正在使用 NReco 将 HTML 视图转换为 C# 项目中的 PDF 文件。一切正常,但我正在努力设置生成的目录的 Font-FamilyFont-Size 属性,因为它与文档的其余部分不匹配。

这是我目前的代码:

var pdfConverter = new HtmlToPdfConverter
{
    Orientation = PageOrientation.Landscape,
    PageFooterHtml = "<div style=\"font-family: Arial;\">Page: <span class=\"page\"></span> of <span class=\"topage\"></span></div>",      
    GenerateToc = true
};

有一个名为 CustomWkHtmlTocArgs 的 属性 可用,我知道我应该用它来解决这个问题,但我不知道要为这个变量分配什么。

我想我需要创建一个 XSLT 风格 sheet 什么的?

您的建议是正确的,NReco.PdfGenerator 内部使用 wkhtmltopdf,如果您想更改默认目录布局 and/or 样式,您需要为目录指定自定义 XSL:

pdfConverter.CustomWkHtmlTocArgs = " --xsl-style-sheet full_path_to_your_toc.xsl ";

获取示例(默认)XSL 文件运行:

> wkhtmltopdf.exe --dump-default-toc-xsl > toc.xsl

您可以在此处获得有关 wkhtmltopdf 选项的更多详细信息:https://wkhtmltopdf.org/usage/wkhtmltopdf.txt