我想使用FPDF创建一个包含3列和不同行数的表。
这是我使用的当前功能:
function MyTable($header, $data){
$w = array(63, 63, 63);
for($i=0;$i<count($header);$i++)
$this->Cell($w[$i],4,$header[$i],1,0,'L');
$this->Ln();
foreach($data as $row)
{
$x=$this->GetX();
$y=$this->GetY();
$push_right = 0;
foreach($row as $col){
$this->Cell($push_right,4,$col,'LR');
$this->Ln();
}
$push_right = $x + 63;
$this->SetXY($push_right,97);
}
$this->Cell(array_sum($w),0,'','T');}
并致电:
$pdf = new PDF();
$pdf->AliasNbPages();
$pdf->AddPage();
$pdf->SetFont('Times','',16);
$header = array('Alergije','Hronicne bolesti','Rizici');
$data = array(array('Penicilin','Latex'),array('Hipertenzija','Dijabetes','Secer'),array('Rizik 1','Rizik 2','Rizik 3','Rizik 4'));
$pdf->MyTable($header,$data);
$pdf->Output();
我想这样:
我发现我需要使用SetXY(),但是它没有按预期工作。
非常感谢任何帮助。
答案 0 :(得分:0)
此行$this->SetXY($push_right,97);
中的问题您没有设置位置y,这就是文本被覆盖的原因。
尝试这样的事情
$a=25;//set your desired location
$this->SetXY($push_right,$a);
//$a=$a+10; //if you want then increment for your desired location