WicketPDF渲染表未正确对齐,页脚位于最后一页

我从html页面生成pdf报告,我分别用页眉和页脚创建了布局,我在最后一页只需要第一页和页脚的标题,我尝试了一些脚本但是它不起作用,以及如何避免分页在表格行内,我需要每个页面的边框,而不会破坏表格行,如图所示。

在此处输入图像描述

respond_to do |format| format.html format.pdf { render :pdf => "Report", :template => 'layouts/pdf_layout.pdf.erb', :layout => 'pdf_layout.pdf.erb', :margin => {:bottom => 35}, :page_size => 'A4', :header => {:content => render_to_string({:template => 'layouts/header.pdf.erb'})}, :footer => {:content => render_to_string({:template => 'layouts/footer.pdf.erb'})} } end 

任何其他建议

提前致谢

通常可以使用一些css规则来缓解分页问题,​​这些规则很好:

 div.alwaysbreak { page-break-before: always; } div.nobreak:before { clear:both; } div.nobreak{ page-break-inside: avoid; /* http://code.google.com/p/wkhtmltopdf/issues/detail?id=9#c21 */ } 

因此,其中一个有趣的事情是这些规则对表元素不起作用,因此如果您有一个表并希望防止单元格被分成两半,则可以使用

包装每个表行。

这肯定不是干净和语义的,但你可以这样做:

 
OneTwo
UnoDos

要使页面边框完美排列,您可能需要使用带有.awaysbreak CSS将其设置为固定高度,然后使用一些javascript来计算表的高度并根据高度将其分成块。

也许这只是因为你的表到目前为止是如此简单,但看起来它可能是一个很好的候选人尝试使用虾 。 您可以更好地控制这些类型的布局问题。

这里有一个railscast。