繁体   English   中英

如何使用包含多个rowspan和colspan的PHPWord在word中创建表?

[英]How to make the table in word using PHPWord which includes multiple rowspan and colspan?

我一直在为我的学术项目学习PHPWord,而且我还有最新的PHPWord库,支持rowspan的“vMerge”和colspan的“gridSpan”。

我一直难以创建一种特定类型的表结构,如下图所示。

在此输入图像描述

问题是如何为'1','2'和'6'设置相同的行数,在这种情况下它等于2。

任何形式的帮助将不胜感激。

edit-1我已经成功完成了基本的rowpan和colspan,但我发现这个复杂的表有困难。

示例中有一个与您正在做的非常接近的示例: https//github.com/PHPOffice/PHPWord/blob/develop/samples/Sample_09_Tables.php

并修改一点来实现你的例子:

$cellRowSpan = array('vMerge' => 'restart');
$cellRowContinue = array('vMerge' => 'continue');
$cellColSpan = array('gridSpan' => 2);

$table->addRow();
$table->addCell(2000, $cellRowSpan)->addText("1");
$table->addCell(2000, $cellRowSpan)->addText("2");
$table->addCell(4000, $cellColSpan)->addText("3");
$table->addCell(2000, $cellRowSpan)->addText("6");

$table->addRow();
$table->addCell(null, $cellRowContinue);
$table->addCell(null, $cellRowContinue);
$table->addCell(2000)->addText("4");
$table->addCell(2000)->addText("5");
$table->addCell(null, $cellRowContinue);

$table->addRow();
$table->addCell(2000);
$table->addCell(2000);
$table->addCell(2000);
$table->addCell(2000);
$table->addCell(2000);

用0.13.0版本进行测试(出于某种原因,libreoffice不喜欢带有vMerge的两个adjecent单元继续定义并且没有按预期显示它们,但是word确实显示了它们如预期的那样)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM