通過我所看到的教程適用於的docx文件生成新的生產線。我學會了如何在生成docx文件中添加文本。但每次我添加一行文本。我注意到第一行文本和第二行文本之間總是有空格。就像按兩次Enter鍵一樣。我知道,主要的原因是,每次我添加一行文字,我用一個段落。並且段落以另一段落之後的空格開始。如何使用DOCX4J
這是我如何添加文本
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文件,它只是提示一條消息指出內容存在問題。
如果您確實想要使用段落,您可以控制前後的空格。您可以在段落或段落樣式,或者在樣式部分docdefaults設置此。 – JasonPlutext