【问题标题】:wkhtmltopdf automatic page breakswkhtmltopdf 自动分页符
【发布时间】:2012-07-22 16:47:59
【问题描述】:

我通过wicked_pdf 在Rails 应用程序中使用wkhtmltopdf v0.11.0 rc1(我知道wicked_pdf 不支持新的命令行参数表示法,我使用的是我自己的gem 分支)。我认为不适合页面的内容应该自动溢出到下一个页面,但事实并非如此 - 我看到文本刚刚被截断,有时在一行的中间。

我知道我可以使用 page-break-after:always 来布局我的页面,但这看起来像是肮脏的硬编码,而且 HTML 来自 ERB 模板,因此在哪里放置分页符并不总是很明显。

可以做些什么来自动插入分页符吗?我是否错过了有关其工作原理的一些信息?

生成的命令行如下所示

\"c:/program files (x86)/wkhtmltopdf/wkhtmltopdf.exe\"
   --header-html \"file:///C:Users/bleak/AppData/Local/Temp/campaign_report.header.pdf_pdf_1580_0.html\" 
   --footer-html \"file:///C:/Users/bleak/AppData/Local/Temp/campaign_report.footer.pdf_pdf_1580_0.html\"
   --margin-top 20 --margin-bottom 15 --margin-left 5 --margin-right 40
   --page-size \"A4\"   
   page \"file:///C:/Users/bleak/AppData/Local/Temp/campaign_report_cover.pdf_pdf_1580_0.html\" --disable-javascript  
   toc --xsl-style-sheet \"c:/work/morizo/admoney/app/views/layouts/campaign_report.xsl\"  - - 

【问题讨论】:

  • 尝试删除底部边距,边距在 PDF 上,而不是生成的页面,所以我认为它正在运行到边距,因此您看到它被切断了。
  • 试过了。没关系,内容还是被截断了。我知道我不需要底部边距...

标签: ruby-on-rails pdf pdf-generation wkhtmltopdf wicked-pdf


【解决方案1】:

事实证明,这是因为 divs 用于包装文档部分的固定大小:

div.page {
  width: 180mm;
  height: 277mm;
  overflow: hidden;
  page-break-after: always;
}

一旦我删除了widthheight,自动中断就开始按预期工作。很简单。

【讨论】:

  • 接受这个答案确实是解决方案:)
  • 你能把链接发布到你的 wicked_pdf fork 吗?与 0.11.0 rc1 一起使用会很棒
  • @HargrimmTheBleak 为什么是 180mm 和 277mm 而不是其他数字?
  • 这是不久前的事了,所以我对细节不再那么清楚了。我的猜测是,这些数字最初是经过定制的,以便为页眉和页脚留出足够的空间。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-02-05
  • 1970-01-01
相关资源
最近更新 更多