2012-01-09 59 views
0

我想從照片中獲得exif。我如何做到最佳?如何從照片中獲得exif?

NSData *dataOfImageFromGallery = UIImageJPEGRepresentation (workingImage,0.5); 

CGImageSourceRef imageSource; 
imageSource = CGImageSourceCreateWithData((__bridge CFDataRef)dataOfImageFromGallery, NULL); 

if (imageSource == NULL) { 
    // Error loading image ... 
    return; } 

NSDictionary *options = [NSDictionary dictionaryWithObjectsAndKeys: [NSNumber numberWithBool:NO], (NSString *)kCGImageSourceShouldCache, nil]; 
CFDictionaryRef imageProperties = CGImageSourceCopyPropertiesAtIndex(imageSource, 0, (__bridge CFDictionaryRef)options); 

if (imageProperties) { 
    NSNumber *width = (__bridge NSNumber *)CFDictionaryGetValue(imageProperties, kCGImagePropertyPixelWidth); 
    NSNumber *height = (__bridge NSNumber *)CFDictionaryGetValue(imageProperties, kCGImagePropertyPixelHeight); 

    CFRelease(imageProperties); 

    NSLog(@"width: %@", width); 
    NSLog(@"height: %@", height); 
} 

本刊widthheight但EXIF屬性是CGImageProperties.h約40 ImageIO.h庫文件,我不知道怎麼一下子打印。

回答

2

使用exiftool, 我simple project基於exiftool

+0

我不明白。我必須寫這個函數。你給我你的應用程序。 – 2012-01-09 18:30:55

+0

對不起,我的項目基於exiftool http://owl.phy.queensu.ca/~phil/exiftool/ – SAKrisT 2012-01-09 19:38:52

0

如果你的目標IOS 4及以上的,你應該使用ALAssetsLibrary。 這裏有很多線程描述ALAssetsLibrary以及如何從圖像中獲取EXIF數據。

要知道,雖然,如果用戶不容許的定位服務APP ALAssetsLibrary不會工作,如果你想要做的是日誌imageProperties的全部內容會報告錯誤(拒絕訪問)

0

字典,然後就去做:

NSLog(@"imageProperties: %@", imageProperties);

如果這不是你要找的內容,請澄清你的問題。

相關問題