1

我在使用 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);

另一个奇怪的事情是,我可以找到基于这种风格的段落,但分配相同的风格会得到错误......意思是,上面的“如果”正在工作,段落被添加到列表中,但这会导致提到的错误上面(我尝试过单独编写列表段落,所以这不是问题):

PStyle style = new PStyle();
style.setVal("ListParagraph");
paragraphProp.setPStyle(style);

我还注意到,生成的 html 中的段落只有 Normal 和 DocDefaults 类名。

非常感谢您!

4

1 回答 1

1

请尝试docx4j-nightly-20130828.jar,其中包含一个 fix

于 2013-08-28T02:20:35.607 回答