使用带有XWPFDocument的Apache POI将图片添加到.docx文件

时间:2012-10-27 23:59:33

标签: java apache-poi xwpf

我一直在尝试使用Apache POI将.jpg图片添加到.docx文件中。 XWPFDocument.addPictureData似乎不起作用。

XWPFDocument docx = new XWPFDocument();
FileOutputStream fos = new FileOutputStream(...);
InputStream pic = new FileInputStream(...);
docx.addPictureData(pic,Document.PICTURE_TYPE_JPEG);
docx.write(fos);

这会创建一个看似空白的新.docx文件。

1 个答案:

答案 0 :(得分:1)

我可能迟到了,但是这个问题https://issues.apache.org/bugzilla/show_bug.cgi?id=49765描述了你的问题。

从poi-3.7开始,您还可以使用XWPFRun.addPicture(InputStream, int, String, int, int)添加图片,如下所示:

docx.createParagraph().createRun().addPicture(pic, Document.PICTURE_TYPE_JPEG, "my pic", Units.toEMU(200), Units.toEMU(200));

如果我弄清楚addPicture方法究竟出了什么问题,我会更新答案。