使用 exiftool 编写 UTF8 编码的 IPTC 标签

Writing an UTF8 encoded IPTC tag using exiftool

我正在通过 MedallionShell(控制台)从我的 C# 应用程序调用 Exiftool,使用 UTF8 编码,我需要将 IPTC 字段写入图像,以便它在内部 UTF8 编码.但是,该字符串始终作为 8 位 Latin2 字符串存储在文件中。

命令行如下所示:

exiftool.exe -charset UTF8 -charset iptc=utf8 -charset exif=utf8 -City="Říčany" file.jpg

我不知道我做错了什么。

这里有一个解决方法:不是将 uncidode 字符串作为命令行参数传递,而是将它们传递到 UTF-8 编码的参数文件中,如下所示:

exiftool -charset utf8 -charset iptc=utf8 -codedcharacterset=utf8 -@ argfile.txt x.jpg

并创建一个 UTF-8 编码的文本文件 argfile.txt:

 -City=Říčany

这甚至适用于非 UTF-8 控制台。编码不需要 -codedcharacterset=utf8 参数,但它将文件标记为 UTF-8 编码文件以供将来处理。