我有一个要求,我有一个Word(.docx)文件。通过使用java程序,我需要使用docx4j将图像放在文档中的某个位置。有人能帮帮我吗!!!
我在尝试下面的代码...
final String XPATH = "//w:t";
String image_Path = "D:\\Temp\\ex.png";
String template_Path = "D:\\Temp\\example.docx";
WordprocessingMLPackage package = WordprocessingMLPackage.createPackage();
List texts = package.getMainDocumentPart().getJAXBNodesViaXPath(XPATH, true);
for (Object obj : texts) {
Text text = (Text) ((JAXBElement) obj).getValue();
ObjectFactory factory = new ObjectFactory();
P paragraph = factory.createP();
R run = factory.createR();
paragraph.getContent().add(run);
Drawing drawing = factory.createDrawing();
run.getContent().add(drawing);
drawing.getAnchorOrInline().add(image_Path);
package.getMainDocumentPart().addObject(paragraph);
package.save(new java.io.File("D:\\Temp\\example.docx"));here
您只是使用该代码将图像附加到文档的末尾。如果在文档中的某个位置需要它,则需要获得位置的句柄(例如,可以使用mainDocumentPart.getJaxbNodeSviaxPath()
)定位特定的P节点),然后简单地将新内容插入文档中的该“索引”处,如下所示:
package.getMainDocumentPart().getContent().add(index, imageParagraph);
(您可以使用类似MainDocumentPart.getContent().indexOf(OldParage)
的方法来派生'index'的值,并且可能还希望移除找到的节点,这可以通过remove()
调用)。
我想做一个游戏,在我看来,游戏不是没有图形的游戏。我尝试过使用BuffereImage类和imageicon类(是的,我做得很正确),但我找不到任何好的教程。我真的不喜欢java库,所以请不要给我一个选择,除非没有其他选择
目前,我从文档中获得的所有文本如下所示:
我用一个xml文件配置log4j,但我不确定在哪里添加格式msgnolookups=true?
我对Springs@Configuration和@Conditional annotation是新手。我在问自己,在我的maven文件夹结构中,这些配置java文件应该放在哪里。 到目前为止,我将所有配置xml文件放入src/main|test/Resources/但是使用这种新方法,不再有xml文件。 谢啦
下面是一个简单的例子: first.docx=简单文本 second.docx=简单文本+图像 问题是我什么时候存钱。出现以下错误: 谢谢