KnowledgeHub
Questions
Tags
Users
Search
Alex Rivera
|
Logout
Edit Question
Title
Body
I have researched enough to get this working but not able to fix it. After taking picture from camera as long as I have image stored as UIImage, it's fine but as soon as I stored this image as PNG representation, its get rotated 90 degree. Following is my code and all things I tried: - (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info { NSString *mediaType = [info valueForKey:UIImagePickerControllerMediaType]; if([mediaType isEqualToString:(NSString*)kUTTypeImage]) { AppDelegate *delegate = (AppDelegate *)[[UIApplication sharedApplication] delegate]; delegate.originalPhoto = [info objectForKey:@"UIImagePickerControllerOriginalImage"]; NSLog(@"Saving photo"); [self saveImage]; NSLog(@"Fixing orientation"); delegate.fixOrientationPhoto = [self fixOrientation:[UIImage imageWithContentsOfFile:[delegate filePath:imageName]]]; NSLog(@"Scaling photo"); delegate.scaledAndRotatedPhoto = [self scaleAndRotateImage:[UIImage imageWithContentsOfFile:[delegate filePath:imageName]]]; } [picker dismissModalViewControllerAnimated:YES]; [picker release]; } - (void)saveImage { AppDelegate *delegate = (AppDelegate *)[[UIApplication sharedApplication] delegate]; NSData *imageData = UIImagePNGRepresentation(delegate.originalPhoto); [imageData writeToFile:[delegate filePath:imageName] atomically:YES]; } Here fixOrientation and scaleAndRotateImage functions taken from here and here respectively. They works fine and rotate image when I apply them on UIImage but doesn't work if I save image as PNG representation and apply them. <p
Tags (comma-separated)
Save Edits
Cancel