图像大小调整而不会丢失Exif数据?

时间:2013-06-27 07:26:04

标签: iphone uiimage image-resizing uiimageorientation

使用“UIImage + Resize.m”在调整大小时以正确的方向获取图像。但我不想丢失Image Exif数据。因此尝试再次编写Exif数据,如

CGImageDestinationAddImageFromSource(destination, resized, 0, imagePropertiesDictionary);

现在我获得了exif数据,但是根据Exif数据中的Image的orientation属性,图像被旋转了。 有没有办法在不丢失Exif数据的情况下获得正确的图像大小调整图像?

2 个答案:

答案 0 :(得分:1)

它当然取决于你如何调整exif维护或不维护的图像。在大多数情况下,调整大小并将其保存回iPhone会导致Exif信息丢失。 一种可能的解决方案是获取exif数据然后调整图像大小。然后重写exif。

答案 1 :(得分:0)

您可以编写方向属性以涵盖原始属性

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

但请确保imagePropertiesDictionary是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