如何使用FPDF放大单元格下载PDF

时间:2016-07-05 14:00:35

标签: php fpdf

我正在使用FPDF库将数据库中的MYSQL数据转换或下载到PDF表单中。但是,当单元格中的字符串太大而它与下一个向下单元格重叠并且所有数据都无序时,我遇到了一个挑战。如何解决这个问题,让弹性细胞能够容纳所有细胞内容?有问题的单元格是以$column_sms_text获取的单词SMS TEXT ...任何人?

//Create a new PDF file
$pdf=new FPDF();
$pdf->AddPage();

//Fields Name position
$Y_Fields_Name_position = 20;
//Table position, under Fields Name
$Y_Table_Position = 26;

//First create each Field Name
//Gray color filling each Field Name box
$pdf->SetFillColor(232,232,232);
//Bold Font for Field Name
$pdf->SetFont('Arial','B',8);
$pdf->SetY($Y_Fields_Name_position);
$pdf->SetX(5);
$pdf->Cell(10,6,'ID',1,0,'L',1);
$pdf->SetX(15);
$pdf->Cell(100,6,'SMS TEXT',1,0,'L',1);
$pdf->SetX(115);
$pdf->Cell(30,6,'RECIVER NUMBER',1,0,'L',1);
$pdf->SetX(145);
$pdf->Cell(30,6,'TIME SENT',1,0,'L',1);
$pdf->SetX(175);
$pdf->Cell(45,6,'DELIVERLY STATUS',1,0,'L',1);
$pdf->SetX(220);
$pdf->Ln();

//Now show the columns
$pdf->SetFont('Arial','',8);
$pdf->SetY($Y_Table_Position);
$pdf->SetX(5);
$pdf->MultiCell(10,6,$column_id,1);
$pdf->SetY($Y_Table_Position);
$pdf->SetX(15);
$pdf->MultiCell(100,6,$column_sms_text,1);
$pdf->SetY($Y_Table_Position);
$pdf->SetX(115);
$pdf->MultiCell(30,6,$column_receiver_number,1);
$pdf->SetY($Y_Table_Position);
$pdf->SetX(145);
$pdf->MultiCell(30,6,$column_time_sent,1,'L');
$pdf->SetY($Y_Table_Position);
$pdf->SetX(175);
$pdf->MultiCell(45,6,$column_status,1,'L');

$pdf->SetX(220);

//Create lines (boxes) for each ROW (Product)

$i = 0;
$pdf->SetY($Y_Table_Position);
while ($i < $number_of_products)
{
    $pdf->SetX(5);
    $pdf->MultiCell(215,6,'',1);
    $i = $i +1;
}

$pdf->Output();
?>

1 个答案:

答案 0 :(得分:0)

试试这个

 $i = 0;
 $pdf->SetY($Y_Table_Position);
 while ($i < $number_of_products)
 {
    $pdf->SetX(5);
    $pdf->MultiCell(215,6,'',1);
    $i = $i +1;
 }
 $content = $pdf->Output("pdf_1.pdf",'F'); // download PDF
 $pdf->Output(); // open PDF

我希望它会有所帮助