我想在我的 Word 文档中使用 docx4j 创建一个带有项目符号的未编号列表。我发现下面的代码应该可以完成这项工作。但无论我尝试什么,生成的列表都是一个编号列表!我使用Word 2010,德语版和docx4j-2.8.1。
wordMLPackage = WordprocessingMLPackage.createPackage();
ObjectFactory factory = new org.docx4j.wml.ObjectFactory();
P p = factory.createP();
org.docx4j.wml.Text t = factory.createText();
t.setValue(text);
org.docx4j.wml.R run = factory.createR();
run.getContent().add(t);
p.getContent().add(run);
org.docx4j.wml.PPr ppr = factory.createPPr();
p.setPPr(ppr);
// Create and add <w:numPr>
NumPr numPr = factory.createPPrBaseNumPr();
ppr.setNumPr(numPr);
// The <w:ilvl> element
Ilvl ilvlElement = factory.createPPrBaseNumPrIlvl();
numPr.setIlvl(ilvlElement);
ilvlElement.setVal(BigInteger.valueOf(0));
// The <w:numId> element
NumId numIdElement = factory.createPPrBaseNumPrNumId();
numPr.setNumId(numIdElement);
numIdElement.setVal(BigInteger.valueOf(1));
wordMLPackage.getMainDocumentPart().addObject(p);
Run Code Online (Sandbox Code Playgroud)
有人可以帮我生成一个真正的无序、项目符号列表吗?!
您发布的代码显示“使用列表号 1,级别 0”。
显然该列表是一个编号列表。
查看编号定义部分中的项目符号列表,然后使用该列表。
如果那里没有项目符号列表,则需要添加它。您可以将示例 docx 上传到 docx4j 在线演示,让它为您生成适当的内容。或者参见ListHelper以获取如何完成此操作的示例。