Php FPDF检查多小区的高度

Php FPDF检查多小区的高度,php,pdf,fpdf,Php,Pdf,Fpdf,我正在使用FPDF生成一个显示产品详细信息的pdf,显然这将有可变的文本长度,导致单元格的高度不同 在这种情况下,我会检查产品中含有多少香水,然后显示每种香水的名称和描述,同时记录这应该占用多少行 for ($i = 0;$i <= $countfrag; $i++) { $pdf->SetXY(102, $next); $fragname = $ranges->getFragName($fragcount[$i]); $fragdesc = $rang

我正在使用FPDF生成一个显示产品详细信息的pdf,显然这将有可变的文本长度,导致单元格的高度不同

在这种情况下,我会检查产品中含有多少香水,然后显示每种香水的名称和描述,同时记录这应该占用多少行

for ($i = 0;$i <= $countfrag; $i++) {
    $pdf->SetXY(102, $next);
    $fragname = $ranges->getFragName($fragcount[$i]);
    $fragdesc = $ranges->getFragDesc($fragcount[$i]);
    $pdf->SetFont('Arial','B',10);
    $pdf->MultiCell(88,4, $fragname, 0, L);
    $next = $next + 4;
    $pdf->SetFont('Gill','',11);
    $pdf->SetXY(102, $next);
    $pdf->MultiCell(98,4, $fragdesc, 0, L); 
    $len = $pdf->GetStringWidth($fragdesc);
    $remain = ceil($len / 98) + 1;
    $extra = $remain * 4;
    $next = $next + $extra;
    }
for($i=0;$i SetXY(102,$next);
$fragname=$ranges->getFragName($fragcount[$i]);
$fragdesc=$ranges->getFragDesc($fragcount[$i]);
$pdf->SetFont('Arial','B',10);
$pdf->MultiCell(88,4,$fragname,0,L);
$next=$next+4;
$pdf->SetFont('Gill','',11);
$pdf->SetXY(102$next);
$pdf->MultiCell(98,4,$fragdesc,0,L);
$len=$pdf->GetStringWidth($fragdesc);
$remain=ceil($len/98)+1;
$extra=$LEVEN*4;
$next=$next+$extra;
}
如您所见,我使用$pdf->GetStringWidth获得字符串的宽度,然后将其除以多单元格的宽度(98),然后添加1以获得额外的行空间,然后再打印下一行

虽然这在很大程度上是可行的,但我正在创建的一些PDF确实存在问题


我有一个例子,其中len的计算值为373.2784,它只给了我4行的高度,因为它需要5行空间才能保持一致。

FPDF不支持好的多小区!
我想几年前FPDF已经停止了支持。使用TCPDF它也有几乎相同的函数/调用(>95%).Its是完全高级的,并且有一个超级文档。TCPDF支持事务处理、Multicell和UTF-8。

在他们的网站上似乎仍然有文档记录,没有任何弃用通知。问题不在于Multicell的功能,而在于我使用的数学。不幸的是,我没有时间在这个pr上切换平台项目。