この場合、カスタムヘッダーを追加する必要があるため、TCPDF では、テーブルがページよりも大きくなるかどうかをどのように判断できますか。テーブルを$pdf->getAliasNumPage()
開始する前と各行の先頭で比較していると、うまくいかないようです。 $pdf->getAliasNumPage()
2回目に使用すると、次のようなものが返されます{:pnp:}
私のコードは次のようになります。
$table="";
$islasttable = 0;
for ($i = 0; $i<sizeof($ar); $i++) {
for ($j = 0; $j<3; $j++) {
if (isset ($ar[$i][$j])) {
if ($j == 0) {
if ($islasttable == 1) {
$table .= '</table><table border="1" style="text-align:center; vertical-align:middle; padding:5;border-bottopm:1px solid black;">';
$islasttable = 0;
} else {
$table .= '<table border="1" style="text-align:center; vertical-align:middle; padding:5;">';
}
$table .= '<tr>
<td colspan="3">Gefehrdungsfaktor</td>
<td colspan="8">'.$ar[$i][$j].'</td>
</tr>';
}
if ($j == 1) {
$table .= ' <tr >
<td colspan="3">gefahrebquelle</td>
<td colspan="8">'.$ar[$i][$j].'</td>
</tr>';
$flag = 1;
}
if ($j == 2) {
if ($flag == 1) {
$level = " top level2 with: ".$ArrayToGenerateTable[$i].' childs';
$table.='<tr>
<td colspan="11">Risiko</td>
</tr>';
$table.='<tr >
<td colspan="1" style="font-size: xx-small; background-color:#F3A505">GK </td>
<td colspan="5" style="background-color:#F3A505">(n)</td>
<td colspan="2" style="background-color:#F3A505"> ?</td>
<td colspan="2" style="background-color:#F3A505"></td>
<td colspan="1" style="font-size: xx-small; background-color:#F3A505">GK </td>
</tr>';
$table.='<tr >
<td colspan="1" rowspan="'.(($ArrayToGenerateTable[$i])*2).'" style="background-color:grey">0</td>
<td colspan="5" rowspan="2">'.$ar[$i][$j].'</td>
<td colspan="1" rowspan="1">ja</td>
<td colspan="1" rowspan="1">X</td>
<td colspan="2" rowspan="2"> </td>
<td colspan="1" rowspan="'.(($ArrayToGenerateTable[$i])*2).'" style="background-color:grey;">0</td>
</tr>
<tr >
<td colspan="1">nein'.'</td>
<td colspan="1">X</td>
</tr>';
} else {
$table.='<tr >
<td colspan="5" rowspan="2">'.$ar[$i][$j].'</td>
<td colspan="1">ja</td>
<td colspan="1">X</td>
<td colspan="2" rowspan="2"> </td>
</tr>
<tr >
<td>nein</td>
<td>X</td>
</tr>';
}
$level = '';
$flag=0;
$islasttable = 1;
}
}
}
}
$table.='</table>';
$pdf->AddPage();
$pdf->writeHTML($table, true, false, true, false, '');
私が持っている1つの解決策:
<style>
table{
table-layout: fixed;
}
td{
max-height:20px;
}
</style>
これで行数を計算できます。