我有html,我使用tcpdf
(PHP)转换为pdf。首先我使用$pdf->AddPage();
然后我用pdf编写html,$pdf->writeHTML()
。现在假设我将再次$pdf->writeHTML
,那么我怎么知道新的$pdf->writeHTML()
命令将从当前页面或新页面打印出来?因为我有一些内容,我应该根据当前页面中的待定空间显示在当前页面或下一页面中。因此,如果新的pdf->writeHTML()
将从新页面开始,那么我不想在某些内容中添加手动分页符。
答案 0 :(得分:1)
TCPDF会将内容写入当前页面,除非您使用TCPDF::AddPage()
手动添加页面或启用了AutoPageBreak
且内容超出了页面底部的设置距离。
默认情况下,AutoPageBreak
的边距为2厘米。您可以使用TCPDF::SetAutoPageBreak()
禁用它($pdf->SetAutoPageBreak(false)
)或设置不同的边距($pdf->SetAutoPageBreak(true, $margin_in_user_measurement_units)
)。默认测量单位是毫米。
即使您启用了AutoPageBreak
,如果您手动启动新页面($pdf->AddPage()
),新内容也会显示在此页面上,直到再次超出下限。手动中断后,自动分页符不会立即插入第二个分页符。
使用TCPDF::WriteHTML()
添加的内容可能超过一页。在这种情况下,AutoPageBreak
会根据需要自动添加新页面。您可以使用CSS(page-break-inside: avoid
)强制内容始终在页面上保持在一起。您可以使用page-break-after: always
强制分页。