如何使用poi ppt中的java.awt.Dimension中的getImageDimensionInPixels()来获取图像大小?

时间:2016-11-21 16:34:29

标签: java apache-poi powerpoint xslf

我使用以下内容迭代ppt中的所有图片,

for(XSLFPictureData data : ppt.getAllPictures()){
    byte[] bytes = data.getData();
    String fileName = data.getFileName();       
    int pictureFormat = data.getPictureType();                         
    System.out.println("picture : " + fileName); 
    System.out.println("pictureSize : " + data.getImageDimensionInPixels()); 
}

如doc:Documentation POI getImageDimensionInPixels()

中所述

如何使用此方法获取像素或高度/长度的图像大小?

1 个答案:

答案 0 :(得分:2)

我已经做了很多改变,将HSLF和XSLF API统一到Common SL - 在您可能抱怨破坏更改之前,XSLF和HSLF都不在稳定的主jar中。 因此,对于主干(POI 3.16),示例代码将是这样的:

@Test
public void bugbla() throws Exception {
    XMLSlideShow ppt = XSLFTestDataSamples.openSampleDocument("51187.pptx");
    for(XSLFPictureData data : ppt.getPictureData()){
        byte[] bytes = data.getData();
        String fileName = data.getFileName();       
        PictureType pictureFormat = data.getType();                         
        System.out.println("picture : " + fileName); 
        System.out.println("pictureSize : " + data.getImageDimensionInPixels()); 
    }
}