Когда вы фотографируете на камеру iPhone, они автоматически помечаются геотегами.
Я написал следующий код для фотографирования в приложении GPS Recorder, но фотографии не имеют геотегирования.
Что я делаю не так? Должен ли я использовать совершенно другой метод, или я могу каким-то образом изменить свой код, добавив геотег и другие данные в информацию EXIF?
Обратите внимание, что self.photoInfo - это информационный словарь, возвращаемый этим методом делегата:
- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info {
Вот код:
UIImage *oImage = [self.photoInfo objectForKey:UIImagePickerControllerOriginalImage];
CGSize size = oImage.size;
oImage = [CameraController imageWithImage:oImage
scaledToSize:CGSizeMake(size.width/2.56,size.height/2.56)];
NSDictionary *info = [[NSDictionary alloc] initWithObjectsAndKeys:
oImage, @"image", titleString, @"title", nil];
TrailTrackerAppDelegate *t = (TrailTrackerAppDelegate *)[[UIApplication sharedApplication] delegate];
[NSThread detachNewThreadSelector:@selector(saveImage:) toTarget:t withObject:info];
+ (UIImage*)imageWithImage:(UIImage*)image scaledToSize:(CGSize)newSize {
UIGraphicsBeginImageContext( newSize );
[image drawInRect:CGRectMake(0,0,newSize.width,newSize.height)];
UIImage* newImage = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
return newImage;
}
Вот фотография, сделанная камерой, которая содержит все хорошие данные EXIF: http://www.flickr.com/photos/33766454@N02/3978868900/
А вот с моим кодом, который не имеет данных EXIF:
http://www.flickr.com/photos/33766454@N02/3978860380/