我正在使用TCPDF生成PDF报告,我从数据库中获取数据并创建PDF TABLE。但是在我使用MultiCell
的特定小区中,细节堆叠在一个区域,我使用MultiCell用于小区。以下是我的输出文件。
以下是我的控制器代码
$slno=0;
$pdf->cell(1);
$pdf->SetFontSize(10);
$pdf->SetFont('Helvetica', 'B');
$pdf->Cell(8, 10, 'SL', 'LTRB', 0, 'C', FALSE);
$pdf->Cell(24, 10, 'Applied Date', 'LTRB', 0, 'C', FALSE);
$pdf->Cell(22, 10, 'Start Date', 'LTRB', 0, 'C', FALSE);
$pdf->Cell(22, 10, 'End Date', 'LTRB', 0, 'C', FALSE);
$pdf->MultiCell(12, 10, 'No. of Days', 'LTRB', 0, 'C', FALSE);
$pdf->Cell(40, 10, 'Reason', 'LTRB', 0, 'C', FALSE);
$pdf->Cell(30, 10, 'Category', 'LTRB', 0, 'C', FALSE);
$pdf->Cell(20, 10, 'Status', 'LTRB', 1, 'C', FALSE);
foreach($result->result() as $key){
$pdf->cell(1);
$pdf->SetFontSize(10);
$pdf->SetFont('Helvetica', '');
$pdf->Cell(8, 10, ++$slno, 'LBR', 0, 'C', FALSE);
$pdf->Cell(24, 10, $key->application_date, 'LBR', 0, 'C', FALSE);
$pdf->Cell(22, 10, $key->start_date, 'LBR', 0, 'C', FALSE);
$pdf->Cell(22, 10, $key->end_date, 'LBR', 0, 'C', FALSE);
$pdf->Cell(12, 10, $key->number_of_days, 'LBR', 0, 'C', FALSE);
$pdf->MultiCell(40, 10, $key->reason, 'LBR', 0, 'C', FALSE);
$pdf->Cell(30, 10, $key->leave_type, 'LBR', 0, 'C', FALSE);
$pdf->Cell(20, 10, $key->status, 'LBR', 1, 'C', FALSE);
}
我通过网络尝试了所有其他方式,但我对结果不满意。有没有其他方法可以使该表适合看?请帮助不多......
答案 0 :(得分:1)
使用html创建表格的writeHTML
会更好。因为我已经尝试了解决方案来调整多单元,问题是没有固定解决方案可以手动调整每行允许的字符的最大长度。每个角色都没有相同的宽度。
您可以在http://www.tcpdf.org/examples.php
其他:
例如,您要求使用此方法从db获取数据 首先,您需要声明表格标题的变量
$html = '<table>
<tr>
<th>Column 1</th>
<th>Column 2</th>
<th>Column 3</th>
<th>Column 4</th>
</tr>';
foreach($result->result() as $key){
$html .= '<tr>
<td>'.$key->column1.'</td>
<td>'.$key->column2.'</td>
<td>'.$key->column3.'</td>
<td>'.$key->column4.'</td>
</tr>';
}
$html .= '</table>';
然后你可以写出那个变量。 这是评论中您的其他问题的简单示例。 您可以使用HTML技能进行改进。但请记住,TCPDF并不完全支持CSS。 希望能帮到你。