将html插入.docx

时间:2014-03-10 04:40:24

标签: php html docx

我使用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,我试过但总是得到:

enter image description here

我不知道。有任何想法或建议如何处理这个?将是非常吝啬的。感谢。

1 个答案:

答案 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);