我在使用PHPWord时遇到了麻烦。尝试使用具有相同深度但具有不同样式的addTitle。目前,我在页面顶部定义了我的样式,但我试图即时覆盖它们,但不幸的是,它不起作用。
我可以看到这已经是github上的问题。 https://github.com/PHPOffice/PHPWord/issues/1397
链接到文档 https://phpword.readthedocs.io/en/latest/
$phpWord->addTitleStyle(1, $fontStyles["HEADING_ONE_SPLIT"], $paragraphStyles["HEADING_ONE_DEFAULT"]);
$sceneSection->addTitle('MY TITLE', 1);
$phpWord->addTitleStyle(1, $fontStyles["HEADING_ONE_SPLIT"], $paragraphStyles["HEADING_ONE_SPLIT"]);
$sceneSection->addTitle('MY TITLE WITH DIFFERENT STYLE', 1);
基本上,样式完全不变。我添加了一个标签,并与“第二个标题段落样式”向左对齐,但未应用。
仅需注意一下,我的字体样式和段落样式可以在不同深度完美配合。问题是我根据深度来创建目录,但是某些标题的深度需要不同的样式。
答案 0 :(得分:0)
PHPword(0.16.0)似乎不支持重新定义已经存在的标题样式(或与此相关的任何命名样式)-如果已经定义了某个深度的标题样式,则第二个addTitleStyle调用将被忽略。您可以在源代码中的Style.php中检查setStyleValues函数,以获取更多详细信息。