我正在使用 phantomjs(但它也应该适用于任何 pdf 生成库,例如 pdfjs 等...)从 HTML 生成 PDF,
问题是当有分页符时,长表会拆分,如何避免这种情况,例如检测到高度超过 A4 尺寸时,关闭表格,并创建另一个表格?
尝试过使用 CSS 但没有成功:
.page-break{
page-break-before:always;
page-break-inside:avoid;
margin-top: 300mm; /*phantomjs renders it on the top of the next page*/
}
table { page-break-after:auto }
tr { page-break-inside:avoid; page-break-after:auto }
td { page-break-inside:avoid; page-break-after:auto }
thead { display:table-header-group }
tfoot { display:table-footer-group }
以及当前的 HTML 代码:
<div class="page-break">
<h3>Heading</h3>
<table class="table table-bordered text-center" width="100%">
<tr><td>....</td><td>....</td></tr>...
</table>
</div>
最佳答案
AFAIK 在创建 PDF 时没有办法“检测”分页符。 只需计算您到目前为止使用的高度并根据页面高度计算中断。
关于javascript - 生成PDF时如何检测长表的分页符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42622321/