pdf-如何在HTML中插入分页符,以便wkhtmltopdf对其进行解析?

因此,基本上我正在使用wkhtmltopdf将动态HTML报告转换为PDF。

该报告具有特定的格式,有人要求我用HTML克隆该格式。

我面临的问题是我无法在html中模拟100%功能的分页符,因此wkhtmltopdf可以解释它并将内容发送到另一页。

我试图避免页面尺寸的测量方法,等等。

TIA提供的任何帮助。

编辑:到目前为止,我正在使用<br>模拟分页符,并且它可以正常工作。 我仍然需要做一些测试。

lenord asked 2020-08-11T23:12:19Z
3个解决方案
54 votes

指定特定于打印介质类型的CSS规则。 有许多可用于分页的属性。 我发现将page-break-before属性附加到类上最容易,如下所示。

在HTML中:

<p>Page 1, paragraph 1</p>
<p class="new-page">Page 2, paragraph 1</p>
<p>Page 2, paragraph 2</p>

在CSS中:

@media print {
  .new-page {
    page-break-before: always;
  }
}
Geraint Anderson answered 2020-08-11T23:12:33Z
45 votes

当我使用@media print时,我使用以下类:

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

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

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

所以我可以强制:

  • 特定的容器内容不会分布在两页中(如果适合一页)。 使用@media print类时,如有必要,在容器之前创建分页符。
  • 在特定容器之前强制分页。
  • 在特定容器之后强制分页。

@media print不适用于wkhtmltopdf

Juangui Jordán answered 2020-08-11T23:13:16Z
5 votes
<div style = "display:block; clear:both; page-break-after:always;"></div>

只需在您的html代码中添加

Ezekiel answered 2020-08-11T23:13:36Z
translate from https://stackoverflow.com:/questions/42005819/how-to-insert-a-page-break-in-html-so-wkhtmltopdf-parses-it