使用CustomXWPFDocument往word指定位置插入图片无法显示

浪子笑伊人 2018-11-29 12:04:02
CustomXWPFDocument插入图片到word指定位置无法显示:


但是在word的最后插入可以用正常显示出来:


中间插入的方法是这个:


最后插入的是这个:


插入的方法是这个:
public void addPictureToRun(XWPFRun run, String blipId, int id, int width, int height) {
final int EMU = 9525;
width *= EMU;
height *= EMU;
CTInline inline = run.getCTR().addNewDrawing().addNewInline();

String picXml = "" +
"<a:graphic xmlns:a=\"http://schemas.openxmlformats.org/drawingml/2006/main\">" +
" <a:graphicData uri=\"http://schemas.openxmlformats.org/drawingml/2006/picture\">" +
" <pic:pic xmlns:pic=\"http://schemas.openxmlformats.org/drawingml/2006/picture\">" +
" <pic:nvPicPr>" +
" <pic:cNvPr id=\"" + id + "\" name=\"Generated\"/>" +
" <pic:cNvPicPr/>" +
" </pic:nvPicPr>" +
" <pic:blipFill>" +
" <a:blip r:embed=\"" + blipId + "\" xmlns:r=\"http://schemas.openxmlformats.org/officeDocument/2006/relationships\"/>" +
" <a:stretch>" +
" <a:fillRect/>" +
" </a:stretch>" +
" </pic:blipFill>" +
" <pic:spPr>" +
" <a:xfrm>" +
" <a:off x=\"0\" y=\"0\"/>" +
" <a:ext cx=\"" + width + "\" cy=\"" + height + "\"/>" +
" </a:xfrm>" +
" <a:prstGeom prst=\"rect\">" +
" <a:avLst/>" +
" </a:prstGeom>" +
" </pic:spPr>" +
" </pic:pic>" +
" </a:graphicData>" +
"</a:graphic>";

inline.addNewGraphic().addNewGraphicData();
XmlToken xmlToken = null;
try {
xmlToken = XmlToken.Factory.parse(picXml);
} catch (XmlException xe) {
xe.printStackTrace();
}
inline.set(xmlToken);

inline.setDistT(0);
inline.setDistB(0);
inline.setDistL(0);
inline.setDistR(0);

CTPositiveSize2D extent = inline.addNewExtent();
extent.setCx(width);
extent.setCy(height);

CTNonVisualDrawingProps docPr = inline.addNewDocPr();
docPr.setId(id);
docPr.setName("Picture " + id);
docPr.setDescr("Generated");
}
...全文
2241 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
十八道胡同 2018-11-29
  • 打赏
  • 举报
回复
https://blog.csdn.net/u012283400/article/details/53174153

我没做过这快,希望可以帮到你
十八道胡同 2018-11-29
  • 打赏
  • 举报
回复
createpicture方法要调用,参考下https://www.xuebuyuan.com/1104404.html
浪子笑伊人 2018-11-29
  • 打赏
  • 举报
回复
已经花了好几天了,都没有能够解决,求各位大佬帮助!!
浪子笑伊人 2018-11-29
  • 打赏
  • 举报
回复
顶,,求大佬
浪子笑伊人 2018-11-29
  • 打赏
  • 举报
回复
这两个我都看过了,没什么用。。。createpicture就是那个addPictureToRun,我只是重新改写了一下

81,092

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧