aka*_*hic 13 iphone gps exif orientation
我正在使用writeImageToSavedPhotosAlbum:metadata:completionBlock:将图像保存到相机胶卷(GPS数据在字典中传递给元数据).但是图片是错误定向的(因为我在拍照时翻转了设备).
还有另一个函数writeImageToSavedPhotosAlbum:orientation:completionBlock:但我无法传递EXIF数据.
根据文档,有kCGImagePropertyOrientation属性来手动设置方向,但我在检查设备的当前方向和保存它时遇到问题.
有没有人用EXIF数据和正确的方向实现保存图片?任何帮助将非常感激.
这是我的代码:
- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info {
image = [info objectForKey:@"UIImagePickerControllerOriginalImage"];
[self dismissModalViewControllerAnimated:YES];
[imageView setImage:image];
if(sourceCamera) {
//EXIF and GPS metadata dictionary
(...)
//saving image
ALAssetsLibrary *al = [[ALAssetsLibrary alloc] init];
[al writeImageToSavedPhotosAlbum:[image CGImage]
metadata:dict
completionBlock:^(NSURL *assetURL, NSError *error) {
if (error == nil) {
NSLog(@"saved");
} else {
NSLog(@"error");
}
}];
[al release];
}
}
Run Code Online (Sandbox Code Playgroud)
最好的祝愿,
一个.
Ano*_*mie 27
设置时,需要将UIImageOrientation值映射到相应的EXIF方向值kCGImagePropertyOrientation.该映射是:
UIImageOrientationUp: 1
UIImageOrientationDown: 3
UIImageOrientationLeft: 8
UIImageOrientationRight: 6
UIImageOrientationUpMirrored: 2
UIImageOrientationDownMirrored: 4
UIImageOrientationLeftMirrored: 5
UIImageOrientationRightMirrored: 7
Run Code Online (Sandbox Code Playgroud)
请注意,UIImageOrientationLeft和UIImageOrientationRight与您对文档的期望相反; 如果将方向应用于直立图像,而不是在应用方向时将提供直立图像的原始图像数据的方向,则可以获得小样本图像.
| 归档时间: |
|
| 查看次数: |
6496 次 |
| 最近记录: |