我有一堆扩展名为“.png”的图像文件,但我相当确定其中一些实际上是已重命名为 PNG 的 JPEG。据我所知,简单地重命名文件实际上并不会改变格式、压缩等,那么如何检查哪些文件的格式是根据其扩展名进行的呢?
另外,XnConvert 真的能转换图像格式吗?
Ber*_*end 14
如果您有 Linux 系统或WSL(在 Windows 上),您可以输入
\nfile myimagewithoutextension\n
Run Code Online (Sandbox Code Playgroud)\n输出:
\nmyimagewithoutextension: JPEG image data, JFIF standard 1.01, resolution (DPI), density 96x96, segment length 16, baseline, precision 8, 768x576, frames 3\n
Run Code Online (Sandbox Code Playgroud)\n该file
命令完全忽略文件扩展名,而是依赖于文件头中的信息。
或者,在记事本中打开可疑的 PNG。如果它确实是 PNG,它会出现\xe2\x80\xb0PNG
在第一行。Jpeg 将在JFIF
靠近开始的地方。
如何检查哪些格式是根据其扩展名进行的?
您可以使用ImageMagick来实现此目的。ImageMagick 适用于Windows、Mac 和 Linux。您通常需要适用于 Windows 的“DLL”版本之一(而不是“静态”版本之一)。
安装后,您可以使用 ex 来识别扩展名不正确的图像。magick identify file.ext
:
例子
# Should be a .jpg, not a .png
magick identify it-kama-sutra.png
it-kama-sutra.png JPEG 500x397 500x397+0+0 8-bit sRGB 37707B 0.000u 0:00.060
# Should be a .gif, not a .png
magick identify giphy.png
giphy.png[0] GIF 346x255 346x255+0+0 8-bit sRGB 256c 0.000u 0:00.062
giphy.png[1] GIF 346x255 346x255+0+0 8-bit sRGB 256c 0.000u 0:00.087
giphy.png[2] GIF 346x255 346x255+0+0 8-bit sRGB 256c 0.000u 0:00.092
[...]
giphy.png[13] GIF 346x255 346x255+0+0 8-bit sRGB 256c 0.000u 0:00.237
giphy.png[14] GIF 346x255 346x255+0+0 8-bit sRGB 256c 0.000u 0:00.329
giphy.png[15] GIF 346x255 346x255+0+0 8-bit sRGB 256c 716527B 0.000u 0:00.336
Run Code Online (Sandbox Code Playgroud)
请注意,在 Windows 上,您需要将magick.exe
( magick
) 添加到 Windows 路径才能使用它,而不指定其确切位置(例如C:\path\to\imagemagick\magick.exe
)。
归档时间: |
|
查看次数: |
27220 次 |
最近记录: |