PDFLib php - 不超过 32 列
PDFLib php - no more than 32 columns
我目前正在使用 PDFLib 9.0.5 和 PHP,我正在努力构建一个 table。
我有一个包含 34 列的大型 table。我做的第一件事是创建 header 行,我收到此错误消息
PDFlibException' with message 'Cell in column(s) 33 and row(s) 1: Illegal array index 32 in function pdc_bvtr_setbit
我测试了32列没有问题。如果我用来创建行的数组大于 32 个元素,我就会出错。
我认为这可能是因为我的 pdf 中缺少 space,所以我增加了 pdf 的宽度,但它并没有改变任何东西。
这是触发错误的代码:
foreach($this->headerTable as $index=>$text)
{
$currentOption=$optlist;
if(is_int($index))
{
$currentColorString=(($col%2)==0)?$alternateWhiteColorString:$whiteColorString;
$currentOption.=(in_array($index,array(2,3)))?' fittextflow={orientate=west}':'';
$currentOption.=($index==5)?' fittextflow={stamp=ll2ur}':'';
$currentOption.=(in_array($index,array(0,1,4)))?' fittextflow={stamp=ll2ur}':'';
}
else
{
$currentColorString=(($col%2)==0)?$greyColorString:$greyAlternateColorString;
$text=$index.' ('.$text.')';
$currentOption.=' fittextflow={stamp=ll2ur}';
}
$textFlow=PDF_add_textflow($this->pdf,0,$text,$optionHeaderContent);
$this->table=PDF_add_table_cell($this->pdf,$this->table,$col,1,'',$currentOption.' matchbox={fillcolor={rgb '.$currentColorString.'}} textflow='.$textFlow);
++$col;
}
Rainer 评论的回答:这是 PDFlib 9.0.5 当前版本中的错误。它应该在下一个版本中修复。
我目前正在使用 PDFLib 9.0.5 和 PHP,我正在努力构建一个 table。
我有一个包含 34 列的大型 table。我做的第一件事是创建 header 行,我收到此错误消息
PDFlibException' with message 'Cell in column(s) 33 and row(s) 1: Illegal array index 32 in function pdc_bvtr_setbit
我测试了32列没有问题。如果我用来创建行的数组大于 32 个元素,我就会出错。
我认为这可能是因为我的 pdf 中缺少 space,所以我增加了 pdf 的宽度,但它并没有改变任何东西。
这是触发错误的代码:
foreach($this->headerTable as $index=>$text)
{
$currentOption=$optlist;
if(is_int($index))
{
$currentColorString=(($col%2)==0)?$alternateWhiteColorString:$whiteColorString;
$currentOption.=(in_array($index,array(2,3)))?' fittextflow={orientate=west}':'';
$currentOption.=($index==5)?' fittextflow={stamp=ll2ur}':'';
$currentOption.=(in_array($index,array(0,1,4)))?' fittextflow={stamp=ll2ur}':'';
}
else
{
$currentColorString=(($col%2)==0)?$greyColorString:$greyAlternateColorString;
$text=$index.' ('.$text.')';
$currentOption.=' fittextflow={stamp=ll2ur}';
}
$textFlow=PDF_add_textflow($this->pdf,0,$text,$optionHeaderContent);
$this->table=PDF_add_table_cell($this->pdf,$this->table,$col,1,'',$currentOption.' matchbox={fillcolor={rgb '.$currentColorString.'}} textflow='.$textFlow);
++$col;
}
Rainer 评论的回答:这是 PDFlib 9.0.5 当前版本中的错误。它应该在下一个版本中修复。