Koin Arab
Koin Arab

Reputation: 1107

Prevent table resizing in PDF

I'm using mpdf to generate PDF from a form. In form I have an option to adding new rows to table. The problem is when count of rows is too big for generated PDF page. Then the table is resizing (it's smaller) instead of going to the next page.

This is mpdf code:

$mpdf=new mPDF('UTF-8','A4','','',20,15,48,25,10,10);
$mpdf->WriteHTML(generatePDF());
$mpdf->Output();
exit;

This is html table code:

function getHTMLStyle(){

$html ='<table class="items" width="100%" style="font-size: 9pt; border-collapse: collapse;" cellpadding="8">
            <tr>
                <td width="5%">A</td>
                <td width="95%"><b>'.$a.'</b><br /><br /> '.$_POST['title'].'</td>
            </tr>
            <tr>
                <td >B</td>
                <td ><b>'.$b.'</b><br /><br /> '.$_POST['organizationName'].'</td>
            </tr>
            <tr>
                <td >C</td>
                <td></td>
                <table class="items2" width="100%" page-break-before="always" >
                    <tr>
                        <td ><b>'.$c.'</b></td>'.addTableC().'
                    </tr>
                </table>
            </tr>

This is image with property view:

enter image description here

And this is an amage with wrong view:

enter image description here

How can I make a break in table and continue to another side?

Upvotes: 2

Views: 1423

Answers (1)

imnotanelephant
imnotanelephant

Reputation: 862

Because you're incorrectly nesting tables -

         <tr>
            <td >C</td>
            <td></td>
            <table class="items2" width="100%" page-break-before="always" >
                <tr>
                    <td ><b>'.$c.'</b></td>'.addTableC().'
                </tr>
            </table>
        </tr>

The table should be inside the <td> tag, like so:

<tr>
  <td>C</td>
  <td>
    <table class="items2" width="100%" page-break-before="always" >
      <tr>
        <td ><b>'.$c.'</b></td>'.addTableC().'
      </tr>
    </table>
  </td>
</tr>

Upvotes: 1

Related Questions