问题描述
我正在使用 wkhtmltopdf 0.12.6 和 asp.net 核心并将其部署在 Azure Linux 中。 我想为封面显示不同的标题。 但是当我生成时,封面页没有显示页眉。页眉已自动删除。
如何为封面添加页面? 以下是 NReco 代码。但是如果已经从wkhtmltopdf中找到了解决方案,那就没问题了。
public class PdfService : IPdfService
{
public HtmlToPdfConverter HtmlToPdf { get; }
public PdfService(
HtmlToPdfConverter htmlToPdf)
{
HtmlToPdf = htmlToPdf;
SetupConverter();
}
public byte[] ToPdf(string htmlContent,string coverpage)
{
return HtmlToPdf.GeneratePdf(htmlContent,coverpage);
}
public byte[] ToPdf(string htmlContent,string coverpage,string header)
{
HtmlToPdf.PageHeaderHtml = header;
return ToPdf(htmlContent,coverpage);
}
}
解决方法
在 wkhtmltopdf 页面页眉/页脚不适用于“封面”页面,这是设计使然,这是正常行为。
如果你想为第一页应用不同的页眉/页脚,你不应该使用 wkhtmltopdf 的封面;相反,您可以使用 HtmlToPdfConverter.GeneratePdfFromFiles(WkHtmlInput[],String,String) 方法,您可以为每个输入 HTML 提供单独的页眉/页脚。请注意,此方法是“高级 API”的一部分,只有在您拥有许可证密钥时才能使用。