【问题标题】:How to detect page break for long table when generate PDF生成PDF时如何检测长表的分页符
【发布时间】:2017-03-06 18:11:20
【问题描述】:

我正在使用 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>

【问题讨论】:

    标签: javascript php html css pdf


    【解决方案1】:

    AFAIK 在创建 PDF 时无法“检测”分页符。 只需计算您到目前为止使用的高度并根据页面高度计算中断。

    【讨论】:

    • 谢谢,需要固定每行的高度,或者可以在客户端更改?谢谢
    猜你喜欢
    • 1970-01-01
    • 2013-01-09
    • 2021-05-16
    • 1970-01-01
    • 2019-12-25
    • 2016-01-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多