5

我想在 JPEG 和 PNG 文件中读取/写入 XMP 元数据。

我可以使用exiftool来做到这一点

~ $ exiftool -xmp-dc:description="FooBar" sample.png
    1 image files updated
~ $ exiftool sample.png | grep "Description"
Description                     : FooBar

但是,我无法使用 imagemagick 读取 XMP 元数据

~ $ identify -verbose sample.png | grep "Description"

我编写 XMP 元数据的原因是它可以被 Adob​​e Products 读取。

问题

  • 有没有办法使用 imagemagick 读取/写入 XMP 元数据?
4

3 回答 3

1

您想问的是“ImageMagick 是否支持读取或写入 XMP(描述性)元数据?”。通过阅读文档,该问题的答案是否定的。ImageMagick (几乎)从文件中读取所有元数据,但不读取描述性元数据。

如果由于某种原因您必须使用 ImageMagick 来提取 XMP 元数据,您可以尝试包含一个过滤器。过滤器可以配置为处理图像文件,但它们不是 ImageMagick 本身的一部分。

于 2014-06-25T16:06:50.043 回答
1

转换 -ping yourimage.jpg XMP:-

于 2016-10-20T04:17:44.290 回答
0

可以按如下方式访问 XMP 数据:

ImageMagick.XmpProfile xmp = image.GetXmpProfile();

Console.WriteLine("\n\n----> xmp:" + xmp);
if (xmp != null)
{
    you have to process the XML data of the XMPs result.  
    ie. use XPATH or some other XML interface.
}
于 2018-02-03T02:51:02.650 回答