如何在PhantomJS中处理PDF分页

我正在使用PhantomJS从HTML创buildPDF。

它工作正常,但我不知道如何与分页工作; 我想为我的文档中的每个div创build一个页面,但我无法在文档中find任何内容。 关于分页。

如果我的文档很短,那么只有一个页面,如果它更大,则会创build一个空白页面,而且我的内容位于第一个页面,变得很长。

任何想法 ? (我正在为nodeJS使用phantomJS-node模块)

PhantomJS负责webkit的css实现。 要实现手动分页符,您可以使用这些属性:

  • page-break-before :auto / always / avoid / …
  • page-break-inside :auto / always / avoid / …
  • page-break-after :auto / always / avoid / …

例如,一个div可以是:

  <div style="page-break-before:always;"><!-- content --></div> 

要么

 <div style="page-break-after:always;"> <!-- content --></div> 

在Webkit中打印时控制分页符有时并不容易,特别是对于很长的html表格。

很晚了,但是我使用JsReport通过改变元素的显示types为内联块来解决“内部隐藏:避免”问题。 更多信息在这里: https : //github.com/ariya/phantomjs/issues/10638

你应该看到这个问题有不同的提示。

尝试在你不想因为分页符而中断的元素中使用display:inline-block 。 背后的原因是,WebKit已经试图保持图像不中断。 图像是内联块。