我正在尝试使用apache
poi创建一个包含jpeg
图片的word文档。我从这里stackoverflow找到了代码。但是,当我运行代码时,创建docx
,它的大小似乎包含jpg图像,但我无法打开它。
我的代码如下:
import org.apache.poi.util.Units;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import org.apache.poi.xwpf.usermodel.BreakType;
import org.apache.poi.xwpf.usermodel.XWPFDocument;
import org.apache.poi.xwpf.usermodel.XWPFParagraph;
import org.apache.poi.xwpf.usermodel.XWPFRun;
public class SimpleImages {
public static void main(String[] args) throws Exception {
XWPFDocument doc = new XWPFDocument();
XWPFParagraph p = doc.createParagraph();
XWPFRun r = p.createRun();
//for(String imgFile : args) {
String imgFile = "mosaic.jpg";
int format =XWPFDocument.PICTURE_TYPE_JPEG;
r.setText(imgFile);
r.addBreak();
r.addPicture(new FileInputStream(imgFile), format, imgFile, Units.toEMU(200), Units.toEMU(200)); // 200x200 pixels
r.addBreak(BreakType.PAGE);
//}
FileOutputStream out = new FileOutputStream("images.docx");
doc.write(out);
out.close();
}
}
当我试图打开我的docx时,我收到了:
由于存在问题,无法打开文件file.docx 内容
答案 0 :(得分:0)
我有同样的问题,但它得到了解决。以前我使用poi 3.10版本,这是该问题的罪魁祸首。我刚刚将其更新为3.12,问题已解决