Macos 如何使用CGImageMetadataRef?

Macos 如何使用CGImageMetadataRef?,macos,osx-mountain-lion,Macos,Osx Mountain Lion,我正在寻找一个使用10.8中名为(CGImageMetadataRef)的新API的示例,该API允许快速查找图像元数据 这是一个大致的思路,但我对API太陌生了,不知道哪里出了问题 CGImageSourceRef source = CGImageSourceCreateWithDataProvider(provider, NULL); CGImageMetadataRef mr = CGImageSourceCopyMetadataAtIndex(source, 0, NULL); 一旦您

我正在寻找一个使用10.8中名为(CGImageMetadataRef)的新API的示例,该API允许快速查找图像元数据

这是一个大致的思路,但我对API太陌生了,不知道哪里出了问题

CGImageSourceRef source = CGImageSourceCreateWithDataProvider(provider, NULL);
CGImageMetadataRef mr = CGImageSourceCopyMetadataAtIndex(source, 0, NULL);

一旦您有了一个有效的
cImageMetadataRef
,您就可以使用,例如,
cImageMetadataCopyTags
来获取元数据标记数组:

CGImageSourceRef source = ...
NSArray *metadataArray = nil;

if (source) {
    CGImageMetadataRef metadata = CGImageSourceCopyMetadataAtIndex(source, 0, NULL);
    if (metadata) {
        metadataArray = CFBridgingRelease(CGImageMetadataCopyTags(metadata));
        CFRelease(metadata);
    }
    CFRelease(source);
}

return metadataArray;