file
如果我以 300 DPI 导出图像,并使用任何可以执行此操作的应用程序(如、exiftool
、identify
等)读取其元信息mediainfo
,我总是会得到一个显示图像宽度和图像高度的值。
在这种情况下:2254 x 288
如何获取 300 DPI 值或任何其他图像文件中的相应值?
因为在我的情况下,图像宽度和图像高度的比例值并不重要,所以我希望能够检查任何图像的分辨率,以便能够编译具有相同质量的新图像,而与它们的比例无关,因为这取决于每个文件。
对于我的工作流程,我对任何命令行解决方案都特别感兴趣,尽管其他任何解决方案当然也受到高度赞赏。
答案1
您可以identify
使用imagemagick
:
identify -format '%x,%y\n' image.png
但请注意,在这种情况下(PNG
图像)identify
将返回分辨率PPCM
(每厘米像素),因此要获取PPI
(每英寸像素),您需要添加-units PixelsPerInch
到命令中(例如,您也可以使用fx
运算符将值四舍五入为整数):
identify -units PixelsPerInch -format '%[fx:int(resolution.x)]\n' image.png
还有exiftool
:
exiftool -p '$XResolution,$YResolution' image.png
虽然它假设图像文件已定义这些标签。
答案2
使用“the gimp”打开它,然后单击[图像] -> [图像属性]
答案3
有关exiftool
PNG 的标签名称,请参见手册页
使用示例
$ exiftool -p "$PixelsPerUnitX,$PixelsPerUnitY,$PixelUnits" image.png
11811,11811,meters