1

我正在使用 PhantomJS 动态生成 PDF。然而,它似乎总是切断页脚和页眉之间的一些内容。

相关文件:

正如您在 PDF 文件中看到的,内容在第 5 页和第 6 页之间被截断。

我已经查看了现有的 Qt 和 PhantomJS 错误,但不能完全确定我是否做得不对,或者这只是一个错误。

  • AFAIK 最理想的选择是使用page-break-inside:avoid,但是 Qt 似乎还不支持。
  • PDF/文档中的代码内容使用表格,显然过去存在问题:9279891038880。我尝试删除所有表格元素(table、tr、td 等)并用 div 替换它们。它在浏览器和 PDF 文件中看起来完全一样,但仍然被切断。
  • 如果顶部位置和底部位置在不同的页面上,我尝试了一个 javascript hack 来检查每个元素,如果是这样,添加一个page-break-before... 但是我无法正确获取单个页面大小,以检查标题的相对位置在每一页上。$('element').offset().top返回整个文档顶部的位置,而不是当前页面。

关于我做错了什么的任何想法?

4

1 回答 1

1

这是一个棘手的问题,但我用简单的逻辑解决了它。投射元素以显示为块元素并且它可以工作。

  display:block;
  page-break-inside:avoid;
于 2015-10-14T14:39:14.803 回答