根据我看过的教程。我学会了如何在生成 docx 文件时添加文本。但后来每次我添加一行文字。我注意到第一行文本和第二行文本之间总是有一个空格。就像按两次回车键一样。我知道主要原因是每次我添加一行文本时,我都会使用一个段落。一个段落以另一个段落之后的空格开始。
这就是我添加文本的方式
ObjectFactory factory;
factory = Context.getWmlObjectFactory();
WordprocessingMLPackage wordMLPackage = WordprocessingMLPackage.createPackage();
P spc = factory.createP();
R rspc = factory.createR();
rspc.getContent().add(wordMLPackage.getMainDocumentPart().createParagraphOfText("sample"));
spc.getContent().add(rspc);
java.io.InputStream is = new java.io.FileInputStream(file);
wordMLPackage.getMainDocumentPart().addObject(spc);
所以这段代码成功运行并产生了正确的输出。但是当我添加另一段时。或文字。我希望它位于文本的第一行下方。有什么方法可以在不使用段落的情况下添加简单的文本行?提前致谢
编辑:我也试过像这样添加一个简单的 org.docx4j.wml.Text
Text newtext = factory.createText();
newtext.setValue("sample new text");
wordMLPackage.getMainDocumentPart().addObject(newtext);
程序会运行,但是当我打开生成的 docx 文件时,它只会提示一条消息,说内容有问题。