14

我有一个 HTML 字符串,我想以与 HTML 相同的格式和样式在 word 文档中打印。我正在使用PHPWord

当我给我的 HTML 字符串说:

$htmlval ="<h6><div style="text-align: center;"><b style=\\"font-size: x-large;\\">OFFER LETTER</b></div><font size=\\"3\\"><div style="text-align: center;"><span style=\\"font-size: medium;\\">(This goes as an email copy)</span></div>";

这是带有 break 和 div 的 HTML 标签。

至:

$section->addText($htmlval);

它打印所有 HTML 标记,但我想要 HTML 中指定格式的内容。

4

2 回答 2

20

以有限的方式它是可能的,但仅适用于基本的 html 标签。

<p>,<h1>,<h2>,<h3>,<h4>,<h5>,<h6>,<strong>,
<em>,<sup>,<sub>,<table>,<tr>,<td>,<ul>,<ol>,<li>

它在更复杂的情况下也不能很好地工作(例如表中的行跨度/列跨度)

$phpWord = new \PhpOffice\PhpWord\PhpWord();
$section = $phpWord->addSection();
\PhpOffice\PhpWord\Shared\Html::addHtml($section, $html);

请查看示例:PHPWord github

于 2014-06-12T11:09:03.283 回答
1

我同意@Tomek 的回答,但您可能有更多的html 标签。

完整列表在这里:
https ://github.com/PHPOffice/PHPWord/blob/4a530d1d97b064b87d9e2a1cc64cab996246569c/src/PhpWord/Shared/Html.php#L116

不要试图用表格或样式做复杂的思考。它只是行不通。

于 2018-01-09T15:44:46.447 回答