从TCPDF迁移至mPDF:如何实现表格行长文本自动分页?
解决mPDF中嵌套表格的分页与压缩问题
先修正表格压缩的配置:
$pdf->shrink_tables_to_fit = 0;—— mPDF中该参数值为1时是允许表格压缩,设为0才是禁用压缩,你之前的设置可能没真正生效,这是表格被压缩的核心原因。实现外层
<tr>自动分页、内层表格不拆分的效果:- 给外层表格和行添加
page-break-inside: auto样式,允许外层行随内容分页;同时给所有嵌套的小表格设置page-break-inside: avoid,强制内层表格保持完整不被拆分。 - 参考HTML结构示例:
<table style="width: 100%; page-break-inside: auto;"> <tr style="page-break-inside: auto;"> <td width="50%"> <table style="width: 100%; page-break-inside: avoid; border-collapse: collapse;"> <!-- 内层表格内容 --> </table> <!-- 更多嵌套小表格 --> </td> <td width="50%"> <!-- 右侧嵌套表格组 --> </td> </tr> <!-- 更多外层行 --> </table>
- 给外层表格和行添加
补充mPDF分页配置:
- 启用自动分页并设置底部留白:
$pdf->SetAutoPageBreak(true, 15);第二个数值为底部页边距,可根据需求调整。 - 若外层行仍无法正常拆分,尝试给外层
<tr>添加display: table-row-group样式,强化mPDF对行分页逻辑的识别。
- 启用自动分页并设置底部留白:
注意事项:
- mPDF对CSS支持有限,优先使用内联样式而非外部样式表。
- 嵌套表格不要设置固定高度,让内容自然撑开,配合分页属性实现预期效果。
内容的提问来源于stack exchange,提问作者rabudde
相关产品推荐
相关产品推荐

