有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java Apache POI XSLF用另一个映像替换映像

我使用ApachePOI作为模板,用占位符形状替换从restful调用中检索的内容

所有这些都很好,但我找不到用另一个图像替换一个图像的方法

我知道可以使用以下代码创建并添加到幻灯片中:

int idx = ui.getPpt().addPicture(bytes, XSLFPictureData.PICTURE_TYPE_PNG);
XSLFPictureShape pic = slide.createPicture(idx);

这一切都是可行的,但我想做的是替换现有的图像,但似乎找不到一种方法来做到这一点,因为我可以与表格和文本对象

有人有什么想法吗


共 (1) 个答案

  1. # 1 楼答案

    首先阅读幻灯片,得到包含图片的形状。 该形状将是XSLFPictureShape的一个实例。 使用以下代码:

    for(XSLFShape shape : slide.getShapes()) {
    
       XSLFPictureShape image = (XSLFPictureShape) shape;
       image.getPictureData().setData(IOUtils.toByteArray(new  FileInputStream("path_to_image"));
    
    }