【问题标题】:TCPDF prevent div from breaking into a new pageTCPDF 防止 div 进入新页面
【发布时间】:2016-10-05 16:37:43
【问题描述】:

我已经尝试了几乎所有我发现和可能想到的方法来防止 div(其中包含一些文本和表格)不进入下一页,但没有发现任何工作。

div的基本结构是这样的:

<div nobr="true" style="page-break-inside:avoid;">
   <b>...</b><br /><a>...</a>...
   <table nobr="true" style="page-break-inside:avoid;">
        <tr>...</tr>
        ...
   </table>
</div>

div 仍然会在任何地方中断(例如,在表格内部,或在第一个孩子之后)。 有什么解决方法可以解决这个问题吗? (我也尝试过单独编写每个 div 并检查是否创建了新页面并回滚以防万一)

【问题讨论】:

    标签: php html css tcpdf


    【解决方案1】:

    终于解决了这个问题!如果有人有同样的问题,这是我的解决方案:

    • 创建 pdf 类的副本
    • 在编写 HTML 代码之前检查您所在的页面
    • 编写 HTML 代码
    • 在编写HTML代码后检查你所在的页面,如果它与之前不一样你必须在实际编写之前创建一个新页面(在原始pdf类中)

      $_pdf = clone $pdf;
      
      $startpage = $_pdf->PageNo();
      
      $_pdf->writeHTMLCell( 0, 0, '', '', $html, 0, 1, false, true, 'C'  );
      
      $endpage = $_pdf->PageNo();
      
      if($startpage != $endpage) {
          $pdf->addPage();
      }
      
      $pdf->writeHTML($css . $htmlP, true, false, true, false, '');
      

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-05-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-09-07
      相关资源
      最近更新 更多