爱笔记爱笔记

exiftool 增删改查图片信息

https://exiftool.org/TagNames/index.html
下载
https://exiftool.org/exiftool-12.57.zip
exiftool 增删改查图片信息

ExifTool 是一个独立于平台的Perl 库加上一个命令行应用程序,用于读取、写入和编辑 各种文件中的元信息。 ExifTool 支持许多不同的元数据格式,包括 EXIF、 GPS、 IPTC、 XMP、 JFIF、 GeoTIFF、 ICC Profile、 Photoshop IRB、 FlashPix、 AFCP和 ID3、 Lyrics3,以及 Canon、 Casio、 DJI , FLIR , FujiFilm , GE , GoPro , HP , JVC/Victor , Kodak , Leaf , Minolta/Konica-Minolta , Motorola , Nikon , Nintendo , Olympus/Epson , Panasonic/Leica , Pentax/Asahi , Phase One , Reconyx , Ricoh、 三星、 三洋、 Sigma/Foveon和 索尼。

ExifTool 也可以作为独立的 Windows 可执行文件和 MacOS 软件包使用:( 请注意,这些版本仅包含可执行文件,不包括 HTML 文档或上述完整分发的其他文件。)

Windows 可执行文件: exiftool-12.57.zip (6.6 MB)

一些命令操作
查看EXIF信息

exiftool photo.jpg  #默认显示所有的信息 exiftool+图片路径/图片名.jpg

写入信息

exiftool -ImageUniqueID=聚次元haox.eu.org coverx.jpg 修改图片id信息
exiftool -Title=聚次元haox.eu.org coverx.jpg 修改图片标题信息

处理中文乱码问题
http://www.bathome.net/thread-2765-2-1.html

中文需要转换成 UTF-8,他把:
exiftool -XPComment="测试" dst.jpg
改成
exiftool -XPComment="娴嬭瘯" dst.jpg

乱码文字生成器可以得到乱码,cmd查看图片信息也能看到乱码
https://www.qqxiuzi.cn/zh/luanma/
image
即把 两字节/字 的汉字 改成了 三字节/字 的 UTF-8编码。果然

exiftool -XPComment="娴嬭瘯" dst.jpg,奏效。

但是问题来了,如何将 两字节/字 变成 成了 三字节/字?这决非容易,还有当字符串汉字字数成单数时,也是个更为难的事。

早先就知道, exiftool 有 命令行参数 charset,今晨就试了试

先是 exiftool.exe  -charset UTF8 -XPComment="测试" dst.jpg
不行

再试 exiftool.exe  -charset GB2312 -XPComment="测试" dst.jpg

哈哈,好了。

如果你将 exiftool.exe  -charset GB2312 -XPComment="测试" dst.jpg 放在 cmd(bat) 批命令里。批命令文件本身一定要 UTF-8 编码的,有没有 BOM, unicode 倒是都可以。但批名令文件本身要是是 GB2312 编码的,则失败。为什么?我不知道。

把这个另存为 utf-8 编码的脚本:

: & chcp 65001 & cls
@echo off
exiftool.exe  -charset UTF8 -XPComment="测试" dst.jpg
pause
本原创文章未经允许不得转载 | 当前页面:爱笔记 » exiftool 增删改查图片信息