[NSImage imageTypes]标识符的人类可读字符串?

问题描述:

简而言之,如何为[NSImage imageTypes]返回的数组中找到的标识符的类型(例如“public.png”或“public”)提取可读的字符串(例如,“Portable Network Graphics” com.microsoft.bitmap“)?我已经阅读了通用类型标识符的各种文档,但找不到任何东西。我吠叫错了树吗?[NSImage imageTypes]标识符的人类可读字符串?

我想UTTypeCopyDescription()做你在找什么:

NSArray *types = [NSImage imageTypes]; 
for (NSString *type in types) { 
    NSString *desc = (NSString *)UTTypeCopyDescription((CFStringRef)type); 
    NSLog(@"description for %@: %@", type, desc); 
    [desc release]; 
} 

输出:

描述为com.adobe.pdf:可移植文档格式(PDF)
描述为COM。 apple.pict:QuickDraw图片
com.adobe.encapsulated-postscript的描述:Encapsulated PostScript
public.jpeg的描述:JPEG图片
描述为public.png:可移植网络图形图像
描述为com.compuserve.gif:图形交换格式(GIF)
描述为public.jpeg-2000:2000的JPEG图像
描述为com.canon.tif -raw图像:佳能TIF原始图像
描述为com.adobe.raw图像:Adobe公司的原始图像
等....