使用 PHPWord 时,我可以在调用 addListItem 时格式化内联文本吗?
When using PHPWord can I format inline text when calling addListItem?
我正在使用 PHPWord (https://github.com/PHPOffice/PHPWord/tree/develop) 生成一些出现在 Word 文档中的带项目符号的项目。我依靠 addListItem() 将项目符号项添加到文档中,并且工作正常。
我遇到的唯一问题是我还需要格式化项目符号项中出现的一些文本,首先出现粗体字,然后出现非粗体字然后;都在同一行内。
例如:
- 粗体字: 一行中全部关于粗体字的更多信息
我不知道是否可以使用 PHPWord。我知道我可以通过 addTextRun() 创建一个 textRun 对象来创建我想要的格式,但是当我这样做时它没有作为项目符号添加到列表中。
有没有办法两全其美?我能否不仅获得 textRun 对象的好处,还可以将其显示为项目符号?
是的,您正在搜索的是 listItemRun。直接来自示例 https://github.com/PHPOffice/PHPWord/blob/develop/samples/Sample_14_ListItem.php
$section->addText(htmlspecialchars('List with inline formatting.', ENT_COMPAT, 'UTF-8'));
$listItemRun = $section->addListItemRun();
$listItemRun->addText(htmlspecialchars('List item 1', ENT_COMPAT, 'UTF-8'));
$listItemRun->addText(htmlspecialchars(' in bold', ENT_COMPAT, 'UTF-8'), array('bold' => true));
$listItemRun = $section->addListItemRun();
$listItemRun->addText(htmlspecialchars('List item 2', ENT_COMPAT, 'UTF-8'));
$listItemRun->addText(htmlspecialchars(' in italic', ENT_COMPAT, 'UTF-8'), array('italic' => true));
我正在使用 PHPWord (https://github.com/PHPOffice/PHPWord/tree/develop) 生成一些出现在 Word 文档中的带项目符号的项目。我依靠 addListItem() 将项目符号项添加到文档中,并且工作正常。
我遇到的唯一问题是我还需要格式化项目符号项中出现的一些文本,首先出现粗体字,然后出现非粗体字然后;都在同一行内。
例如:
- 粗体字: 一行中全部关于粗体字的更多信息
我不知道是否可以使用 PHPWord。我知道我可以通过 addTextRun() 创建一个 textRun 对象来创建我想要的格式,但是当我这样做时它没有作为项目符号添加到列表中。
有没有办法两全其美?我能否不仅获得 textRun 对象的好处,还可以将其显示为项目符号?
是的,您正在搜索的是 listItemRun。直接来自示例 https://github.com/PHPOffice/PHPWord/blob/develop/samples/Sample_14_ListItem.php
$section->addText(htmlspecialchars('List with inline formatting.', ENT_COMPAT, 'UTF-8'));
$listItemRun = $section->addListItemRun();
$listItemRun->addText(htmlspecialchars('List item 1', ENT_COMPAT, 'UTF-8'));
$listItemRun->addText(htmlspecialchars(' in bold', ENT_COMPAT, 'UTF-8'), array('bold' => true));
$listItemRun = $section->addListItemRun();
$listItemRun->addText(htmlspecialchars('List item 2', ENT_COMPAT, 'UTF-8'));
$listItemRun->addText(htmlspecialchars(' in italic', ENT_COMPAT, 'UTF-8'), array('italic' => true));