2013-05-20 43 views
0

我在JPEG圖像的EXIF標頭的UserComment字段中有一些重要的元數據信息。我試圖用iOS - 從UIImage檢索EXIF UserComment

NSData* jpgData = UIImageJPEGRepresentation(uiImage, 1.0); 

CGImageSourceRef source = CGImageSourceCreateWithData((__bridge CFDataRef)jpgData, NULL); 
NSDictionary *metadata = (__bridge NSDictionary *) CGImageSourceCopyPropertiesAtIndex(source, 0, NULL); 

NSDictionary *img_metadata = [metadata objectForKey:(NSString*)kCGImagePropertyExifDictionary]; 

NSString* user_comment = [img_metadata objectForKey:(NSString*)kCGImagePropertyExifUserComment]; 

然而,img_metadata字典,我回去不再包含用戶評論檢索它,即使它確實還有其他領域,如色彩空間和圖像尺寸是多少?有沒有辦法從UIImage對象獲取用戶評論?

回答

6

UIImage表示解碼圖像,並丟棄元數據。重新編碼的數據(在您的情況下爲UIImageJPEGRepresentation)仍將包含諸如色彩空間,圖像大小和方向等信息,因爲在編碼/解碼操作期間可能需要這些信息。

獲取元數據的唯一方法是使用原始圖像數據,無法從UIImage中獲取它。

+0

這很合理,謝謝! – psalvaggio