ImageMagick C# 如何添加 JPEG EXIF 标签
ImageMagick C# How to Add JPEG EXIF TAGS
在 VS2013、Framework 4.6 中将 ImageMagick 8 用于 .Net
我正在尝试为 jpeg 图片添加 exif 标签,
我的代码:
var exif = new ExifProfile();
exif.SetValue(ExifTag.Artist, "SM");
exif.SetValue(ExifTag.OwnerName, "ownerexample.com");
exif.SetValue(ExifTag.XPKeywords, "one two three");
问题是最后一行抛出了这个:
"exif Value should be an array"
也无法将字符串转换为字符串数组或字节数组,
- 我是否使用正确的标签 (ExifTag.XPKeyWords) 将标签添加到 jpeg?
- 如果我是对的,那么使用 ImageMagick 向 jpeg 添加标签的正确语法是什么?
ImageMagick 没有版本 8,我怀疑您正在使用 Magick.NET。你得到一个异常,因为 XPKeywords
应该是一个字节数组而不是一个字符串。你应该这样做:
Encoding.UTF8.GetBytes("one two three");
您可以使用以下代码将配置文件添加到图像中:
image.AddProfile(exif);
您的操作将对图像进行解码和编码。如果您只是想按照@fmw42 的建议更改 exif 数据,那么像 exiftool 这样的工具可能会更好。
在 VS2013、Framework 4.6 中将 ImageMagick 8 用于 .Net
我正在尝试为 jpeg 图片添加 exif 标签,
我的代码:
var exif = new ExifProfile();
exif.SetValue(ExifTag.Artist, "SM");
exif.SetValue(ExifTag.OwnerName, "ownerexample.com");
exif.SetValue(ExifTag.XPKeywords, "one two three");
问题是最后一行抛出了这个: "exif Value should be an array"
也无法将字符串转换为字符串数组或字节数组,
- 我是否使用正确的标签 (ExifTag.XPKeyWords) 将标签添加到 jpeg?
- 如果我是对的,那么使用 ImageMagick 向 jpeg 添加标签的正确语法是什么?
ImageMagick 没有版本 8,我怀疑您正在使用 Magick.NET。你得到一个异常,因为 XPKeywords
应该是一个字节数组而不是一个字符串。你应该这样做:
Encoding.UTF8.GetBytes("one two three");
您可以使用以下代码将配置文件添加到图像中:
image.AddProfile(exif);
您的操作将对图像进行解码和编码。如果您只是想按照@fmw42 的建议更改 exif 数据,那么像 exiftool 这样的工具可能会更好。