使用Apache POI从excel文件中获取图像及其位置

Thu*_*ash 7 java excel apache-poi

是否可以使用Apache POI从xls电子表格中提取图像信息?

在我的一个项目中,我需要从.xls文件中读取一些图像.我可以一起阅读所有图像,但是如何获得图像位置(如列和行数或坐标)?否则我可以获得图像位置但我无法知道关于找到位置的特定图像的信息,如图片名称或扩展名或其他信息.我怎么能得到图像和位置?

在这里阅读所有图像...这里得到图像位置...

小智 4

看看这里:

http://poi.apache.org/components/spreadsheet/quick-guide.html#Images

样本:

List lst = workbook.getAllPictures();

for (Iterator it = lst.iterator(); it.hasNext(); ) {

    PictureData pict = (PictureData)it.next();

    String ext = pict.suggestFileExtension();

    byte[] data = pict.getData();

    if (ext.equals("jpeg")) {

      FileOutputStream out = new FileOutputStream("pict.jpg");

      out.write(data);

      out.close();

    }
}
Run Code Online (Sandbox Code Playgroud)

之后,您可以使用 ImageInfo 等扩展 Magick 的工具来查找各种配置。您甚至可以将图像转换为不同的尺寸。

也看一下这个类:

http://blog.jaimon.co.uk/simpleimageinfo/SimpleImageInfo.java.html

- 希望这可以帮助