PHPPowerpoint和setColSpan问题

时间:2013-11-25 10:16:19

标签: php phppowerpoint

我正在尝试使用PHPPowerpoint创建一个表。我在处理表格单元格的合并时遇到了一个问题,如下所示:

$arr = array('TNS', 'Hard Reserach', 'Kadence', 'RSMRS', 'Sharp', 'Hansa', 'Market Excel');

$shape = $currentSlide->createTableShape(26);
$row = $shape->createRow();
$row->nextCell()->createTextRun('Base')->getFont()->setBold(true)->setSize(14);
$row->nextCell()->createTextRun('')->getFont()->setBold(true)->setSize(14);
$row->nextCell()->setColSpan(3)->createTextRun('All')->getFont()->setBold(true)->setSize(14);

foreach($arr as $name)
{
$row->nextCell()->setColSpan(3)->createTextRun($name)->getFont()->setBold(true)->setSize(14);   
}
$row = $shape->createRow();

这就是我得到的

Current

这就是我要找的

Expected

我观察到的事情是只打印出$arr的第3和第6个元素。这可能是由于setColSpan属性为3(3的倍数打印)?如果是,我该怎么做呢?

1 个答案:

答案 0 :(得分:0)

没关系。我自己想通了。如果其他人正在寻找相同的解决方案,这就是它的完成方式。需要进行轻微修改,即:

更改

$row->nextCell()->setColSpan(3)->createTextRun('All')->getFont()->setBold(true)->setSize(14);

$row->nextCell()->setColSpan(3)->createTextRun('All')->getFont()->setBold(true)->setSize(14);
$row->nextCell()->createTextRun('');
$row->nextCell()->createTextRun('');

并更改

$row->nextCell()->setColSpan(3)->createTextRun($name)->getFont()->setBold(true)->setSize(14);

$row->$nextCell()->setColSpan(3)->createTextRun($name)->getFont()->setBold(true)->setSize(14);
$row->nextCell()->createTextRun('');
$row->nextCell()->createTextRun('');