在不重新编码的情况下更改JPEG中的DPI?使用ImageMagick或其他东西


1

有时我有想要包含某个DPI设置的图像文件。请注意,我只是指DPI值,即只是图像元数据中的值。我不想调整实际图像的大小。因此,例如,较高的DPI将导致以厘米为单位的较小尺寸以及相同数量的像素。

我知道我可以使用ImageMagick设置或更改图像的DPI convert 随着 -density 参数,但这将重新编码图像。我想避免这种情况。

有没有办法,使用ImageMagick或其他东西(例如ExifTool或其他东西)来显式设置JPEG的DPI值而不改变实际的压缩图像内容本身?

请注意,我正在使用OS X并寻找命令行工具来执行此操作(我想在shell脚本中使用它)。

Answers:


7

你可以这样做 exiftool

你的命令是:
exiftool -XResolution=# -YResolution=# FileOrDir
将哈希标记更改为新的DPI编号。此命令将对每个文件进行备份,您可以通过添加来避免这些备份 -overwrite_original。相关的是 -ResolutionUnit 可以设置为 Noneinches, 要么 cm


另一种选择是:-jfif:Xresolution = 300 -jfif:Yresolution = 300(这里是ExifTool的作者建议的): u88.n24.queensu.ca/exiftool/forum/index.php?topic=2164.0
Ben-Uri

对于600dpi PNG文件: exiftool -overwrite_original_in_place -PixelsPerUnitX=23607 -PixelsPerUnitY=23607 *.png
Matt Sephton
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.