FPDF:将细胞与多细胞对齐

时间:2013-09-05 19:30:28

标签: php fpdf

我正在尝试将包含图像的单元格与多单元格对齐,该多单元格包含与图像相关的详细信息,以便图像和细节并排显示。在搜索网络后,我找到了一些方法来做到这一点。 (我从数据库中调出了详细信息):

$pdf = new PDF();
$pdf->AliasNbPages();
$pdf->AddPage();
$pdf->SetFont('Times','',12);
$image_height = 37;
$image_width = 37;


foreach($inventories as $key => $inventories) :

    $image = $inventories['image'];
    $resourceID = $inventories['resourceID'];
    $learningcentre = $inventories['learningcentre'];
    $title = $inventories['title'];
    $quantity = $inventories['quantity'];
    $description = $inventories['description'];

  $pdf->Cell( 40, 20, $pdf->Image($imagesDirectory.$image, $pdf->GetX(), $pdf->GetY(), $image_height, $image_width), 0, 0, 'L');
  $pdf->MultiCell(140,8,$resourceID."\n".$title."\n".$learningcentre."\n".$quantity."\n".$description, 1,1);
  $pdf->Ln();

 endforeach; 

但是,当结果到达页面末尾时,图像将被切断,细节单元格将被推送到下一页,如下图所示

output image

我是FPDF的新手并且一直试图寻找解决方案,但无济于事。任何帮助将不胜感激。谢谢!

1 个答案:

答案 0 :(得分:0)

我自己是FPDF菜鸟,但你尝试过AcceptPageBreak功能吗?

像这样(从fpdf网站复制):

function AcceptPageBreak()
{
    // Method accepting or not automatic page break
    if($this->col<2)
    {
    // Go to next column
    $this->SetCol($this->col+1);
    // Set ordinate to top
    $this->SetY($this->y0);
    // Keep on page
    return false;
    }
    else
    {
    // Go back to first column
    $this->SetCol(0);
    // Page break
    return true;
    }
}

作为参考,fpdf tutorials确实非常有用。我怀疑this one in particular可以帮助你做你正在做的事情。