使用JMagick API获取图像信息

时间:2013-09-27 04:03:03

标签: java imagemagick jmagick

使用Jmagick Java API,如何获取图像信息,如:

编解码器,配色方案,颜色深度,宽度,高度,调整大小指令,图像大小等。

我尝试执行以下代码,但它没有提供任何有用的细节。

public static void main(String[] args) throws Exception {

   String baseDir = System.getProperty("user.dir");
   String pngFile = baseDir + File.separator + "input" + File.separator + "image.jpg";

   DisplayImageMetaData metaData = new DisplayImageMetaData();

   // Input BMP file
   String inputfileName = pngFile;

   // Get BMP file into ImageInfo object
   ImageInfo info = new ImageInfo(inputfileName); 
   DisplayImageMetaData.displayImageInfo(info);
}

它给了我以下输出,这是不同的。

Info PreviewType is 0(UndefinedPreview)
Info Monochrome is 0
Info Colorspace is 0(UndefinedColorspace)
Info Resolution units is 0
Info Compression is 0(UndefinedCompression)
Info Density is null
Info magick is 
Info filename is /home/host1/javaWs/JMagick/input/image.jpg

1 个答案:

答案 0 :(得分:0)

而不是使用DisplayImageMetaData尝试MagickImage类。

/** Typical scaling implementation using JMagick **/
ImageInfo origInfo = new ImageInfo("C:/Users/windows 7/Pictures/Desert.jpg"); //load image info
MagickImage image = new MagickImage(origInfo); //load image
System.out.println(image.getDimension() + " " + image.getColorspace() + " " + image.getFileName() + " " + image.getXResolution() + " " + image.getYResolution());

我的测试图像的输出是

java.awt.Dimension[width=1024,height=768] 1 C:/Users/windows 7/Pictures/Desert.jpg 72.0 72.0

MagickImage班(JMagick documentation)中提供了大量图片信息。