我使用phpoffice/phpword来处理文档模板,可以在此处找到示例:https://github.com/PHPOffice/PHPWord/blob/master/samples/old/Template.php。
问题是我需要插入格式化文本,这是从wysiwyg编辑器生成的html
代码。我不能这样做:
$document->setValue('Value1', '<span>Sun</span>');
文档生成会出错,我猜是因为库无法与OpenXML一起解析html。我需要做的是,可能首先将html转换为OpenXML,我试过但总是得到:
我不知道。有任何想法或建议如何处理这个?将是非常吝啬的。感谢。
答案 0 :(得分:1)
您可以将html添加到表单元格,请参见示例:
$templateProcessor=$PHPWord->loadTemplate('Template.docx');
$value = '<b>TEST</b>';
$wordTable = new \PhpOffice\PhpWord\Element\Table();
$wordTable->addRow();
$cell = $wordTable->addCell();
\PhpOffice\PhpWord\Shared\Html::addHtml($cell,$value);
$templateProcessor->setComplexBlock('SomePlaceholder', $wordTable);