iphoneuiimageimage-resizinguiimageorientation

Image Resizing without losing Exif Data?


Using "UIImage+Resize.m" getting image in proper orientation when resizing. But i won't want to lose Image Exif data. So tried to write Exif data again like

CGImageDestinationAddImageFromSource(destination, resized, 0, imagePropertiesDictionary);

Now i got exif data but image get rotated based on Image's orientation property in Exif data. Is there any way get proper image resized image without losing Exif data?


Solution

  • you can write the orientation property to cover the original one

    [imagePropertiesDictionary setObject:[NSNumber numberWithInt:orientation] forKey:@"Orientation"];
    

    but make sure imagePropertiesDictionary is NSMutableDictionary

    //        case UIDeviceOrientationLandscapeLeft: return 1; // Top, left
    //        case UIDeviceOrientationPortrait: return 6; // Right, top
    //        case UIDeviceOrientationLandscapeRight: return 3; // Bottom, right
    //        case UIDeviceOrientationPortraitUpsideDown: return 8; // Left, bottom