900字范文,内容丰富有趣,生活中的好帮手!
900字范文 > poi word文档在书签处插入图片

poi word文档在书签处插入图片

时间:2022-09-06 22:47:36

相关推荐

poi  word文档在书签处插入图片

src:docx文档路径

codePNGpath:图片路径

dest:docx写出路径

aaa:书签名

try {

InputStream inputStream = new FileInputStream(src);

XWPFDocument document = new XWPFDocument(inputStream);

List paragraphList = document.getParagraphs();

for(XWPFParagraph xwpfParagraph:paragraphList){

CTP ctp = xwpfParagraph.getCTP();

for(int dwI = 0;dwI < ctp.sizeOfBookmarkStartArray();dwI++){

CTBookmark bookmark = ctp.getBookmarkStartArray(dwI);

if(“aaa(书签名称)”.equals(bookmark.getName())){

XWPFRun run = xwpfParagraph.createRun();

Node firstNode = bookmark.getDomNode();

Node nextNode = firstNode.getNextSibling();

XWPFRun runimg =xwpfParagraph.createRun();

File file=new File(codePNGpath);

FileInputStream in=new FileInputStream(file);

BufferedImage image=ImageIO.read(file);

runimg.addPicture(in, org.apache.poi.xwpf.usermodel.Document.PICTURE_TYPE_PNG, “”,

Units.toEMU(image.getWidth()), Units.toEMU(image.getHeight()));

ctp.getDomNode().insertBefore(runimg.getCTR().getDomNode(),firstNode);

in.close();

FileOutputStream fos = new FileOutputStream(dest);

document.write(fos);

fos.close();

}

}

}

} catch (FileNotFoundException e) {

// TODO Auto-generated catch block

e.printStackTrace();

} catch (InvalidFormatException e) {

// TODO Auto-generated catch block

e.printStackTrace();

} catch (IOException e) {

logger.error(“在word上添加图片出错”);

}

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。