我在使用docx4j将docx文档导出为html时遇到问题。我的应用程序从几个文档中删除段落,然后将其连接成一个文档,然后将其导出为html。
问题在于列表。生成的docx打开,我想要的内容就在那里(虽然它声明文档有错误,而不是子弹列表,有一个编号的),但在html导出期间我收到以下错误信息:
错误 org.docx4j.model.PropertyResolver .getEffectivePPr第635行 - 找不到样式:ListParagraph
我列出了已知的样式,并在StyleTree中进行了检查,ListParagraph就在那里。
如果我创建一个新的PStyle并将其分配给有问题的段落,则错误消失,但列表格式也是如此。它成为一个没有子弹的简单段落(应该如此)。如果我尝试分配除“Normal”之外的任何其他样式,我会得到相同的错误,只有错误消息中的其他样式名称。
if (paragraphProp.getPStyle().getVal().equals("ListParagraph")) {
listElements.add(paragraph);
另一个奇怪的是,我可以根据这种风格找到段落,但是分配相同的样式会得到错误...意思是,上面的“if”工作,段落被添加到列表中,但是这会导致上面提到的错误(我已尝试将List Paragraph写成单独的,所以这不是问题):
PStyle style = new PStyle();
style.setVal("ListParagraph");
paragraphProp.setPStyle(style);
我还注意到,生成的html中的段落只有Normal和DocDefaults类名。
非常感谢你!