我正在编写一个开源库来提取图像元数据并将其作为 XMP 序列化存储在 XML sidecar 中(理想情况下,与 Adobe 的应用程序序列化其元数据的方式相同)。
我的问题是 BitmapMetadata 似乎具有我需要的所有值,但是键被损坏了。其中许多只是整数,而不是它们对应的 XMP 命名空间 XML 样式名称。微软声称他们正在使用 XMP 在媒体中存储 读取/写入许多不同格式的元数据,但我看不出有任何方法可以从中重建一些标准 XMP 名称。
例如, Name= "/{ushort=272}"
, Format="ifd"
是我所拥有的,但我需要的是<tiff:Model>
where xmlns:tiff="http://ns.adobe.com/tiff/1.0/"
。为此,我可以使用我的ExifUtils 库中的 ExifTags来映射一些键,因为我知道它是什么。我不确定其他许多人。
我的问题:
任何熟悉 BitmapMetadata 的人都知道我是否走上了死胡同?
是否有 Microsoft 正在编码的标准化映射?我还没有在Adobe 的官方 XMP 规范中找到它。
更新:这个库的开源代码现在可以在 Google Code 作为XmpUtils library 获得。它支持将 XMP 元数据作为标准的基于 RDF 的 XML 读取/写入。