提问者:小点点

wkhtmltopdf.netcore中的分页符


我需要通过ASP.NET核心中的WEB API生成一个带有表格的PDF。我目前有一个方法接收字符串形式的HTML,并使用wkhtmltopdf.netcore中的GetPDF方法生成PDF,然后以字节为单位返回它。

public IActionResult Html2Byte([FromBody] string html)
{
    var data = generatePdf.GetPDF(html);
    return Ok(data);
}

问题是,我需要在HTML中手动设置表之间的分页符,以便在PDF中将它们拆分到不同的部分。

我尝试使用标记
添加,并通过CSS使用@media print添加以下类,但没有添加:

@media print {
    .keep-together-page {
        page-break-inside: avoid;
    }

    .break-before-page {
        page-break-before: always;
    }

    .break-after-page {
        page-break-after: always;
    }
}

然而,无论我如何添加CSS,无论是通过类添加还是直接在style属性中添加,它仍然无法识别分页符。我能够再现的最接近的方法是为DIV添加高度,但由于表中的行数可能不同,这并不理想。

我能做些什么让它识别分页符吗?欢迎任何帮助


共1个答案

匿名用户

尝试在HTML的开头放置一个style属性,例如-

<style type="text/css">
    .keep-together-page {
        page-break-inside: avoid;
    }

    .break-before-page {
        page-break-before: always;
    }

    .break-after-page {
        page-break-after: always;
    }
</style>