Inner Sanctum ~/mirror/images $ file wardrobe_square_90.gif
wardrobe_square_90.gif: GIF image data, version 89a, 90 x 90
Inner Sanctum ~/mirror/images $ file wardrobe_square_90.jpg
wardrobe_square_90.jpg: JPEG image data, JFIF standard 1.01
Inner Sanctum ~/mirror/images $ file wardrobe_square_90.png
wardrobe_square_90.png: PNG image data, 90 x 90, 8-bit/color RGB, interlaced
调用某些格式的文件可以获取图像的尺寸,但不能获取 JPEG。
我发现了一种使用 ImageMagick 调用 convert 来将 JPEG 或诸如此类的图像转换成 PNG 的方法,但是这种方法有一点代码味道。
有没有好方法来查询 JPEG 的尺寸?
谢谢,
答案1
ImageMagick 具有identify
“描述一个或多个图像文件的格式和特征”的功能。
$ identify bild.jpg
bild.jpg JPEG 480x640 480x640+0+0 8-bit DirectClass 57.2KiB 0.000u 0:00.000
答案2
与大多数 UNIX 事物一样,有多种方法可以做同样的事情。
NetPBM 实用程序提供了一种实用程序pnmfile
,当与 结合使用时djpeg
,可以提供 JPEG 文件的文件尺寸:
% djpeg default_wallpaper.jpg | pnmfile -
-: PPM raw, 1920 by 1280 maxval 255
djpeg
可以在许多 JPEG 包中找到,NetPBM 实用程序也是如此。例如,在 Centos/RHEL 上,可以从基础存储库获取包:
netpbm-progs
和libjpeg-turbo