2016-12-12 4 views
0

Я работаю над распечаткой счета-фактуры.Перерыв страницы на бумаге TCPDF

У меня возникла проблема с печатью счета-фактуры. скажем, есть счет-фактура, состоящая из элементов, которые находятся на одной странице. Проблема в том, что после всех предметов есть промежуточные, налоговые и грандиозные.

В этом случае эти 3 будут на второй странице (новая страница), в то время как элементы находятся на первой странице.

Я проверил строку, которую может хранить одна страница в tcpdf (после всего моего формата макета и т. Д.) И обнаружил, что 1 страница будет состоять из 28 элементов. Это будет хорошо работать, если весь элемент состоит из 1 строки. Однако, если некоторые элементы состоят из 2 или более строк, вычисление столкнется с проблемой, и вся структура будет беспорядочной.

Как я могу автоматически перемещать некоторые элементы на вторую страницу, если общее количество элементов - 28 пунктов, поэтому вторая страница будет состоять не только из промежуточного итога, налога и общей суммы?

вот мой код

$count = 0; 
$i = 0; 
if(count($finalProduct)>0){ 
foreach($finalProduct as $product){ 
    foreach($product['product'] as $prod){ 
     if($prod['qty'] > 0){ 

      /* check the row */ 
      if($count >= 27){ 
       $PDFCONTENT .= '<tr style="page-break-after:initial"><td colspan="6"></td></tr>'; 
       $PDFCONTENT .= '<tr><td colspan="6"></td></tr>'; 
       $count = 0; 
      } 

       $PDFCONTENT .= ' 
        <tr nobr="true">'; 
       $PDFCONTENT .= '<td align="center" width="7%">'.$prod['index_number'].'</td>'; 
           </tr>'; 
      } 
      $count++; 
     } 
     $PDFCONTENT .= '<tr><td></td></tr>'; 
    } 
    } 
    $PDFCONTENT .= '<tfoot> 
    <tr> <td> </td> </tr> 
    <tr> 
    <th align="right" colspan="6">SUB TOTAL $:-</th> 
    <th style="border-top: 1px solid black;border-bottom: 1px solid black;" align="center">'.number_format($data['total'],2).'</th> 
</tr> 
    <tr> 
    <th align="right" colspan="6">ADD '.number_format($data['transaction_tax_percentage']).'% $:-</th> 
    <th style="border-top: 1px solid black;border-bottom: 1px solid black;" align="center">'.number_format($data['transaction_tax_amount'],2).'</th> 
</tr> 
    <tr> 
    <th align="right" colspan="6">TOTAL $:-</th> 
    <th style="border-top: 1px solid black;border-bottom: 1px solid black;" align="center">'.number_format($data['grand_total'],2).'</th> 
</tr> 
</tfoot>'; 

ответ

0

Я помню, что это была реальная проблема с таблицами. поэтому мы вычисляем, если будет установлен параметр pagebreak. Если это так, мы закрыли вкладку, добавили новый сайт и снова открыли таблицу, а остальную часть таблицы оставили в ней.

Чтобы заставить перенос страницы мы использовали <br pagebreak="true"/>

если не закрыть таблицу, приводит к другим проблемам.

Хорошая угроза также здесь, на SO: Manual Page Break in TCPDF

Смежные вопросы