5

我正在尝试通过我的自定义裁剪器裁剪图像。不是来自 UIImagePickerController 的。现在,我通过处理 UIImagePicker 的委托在 UIImgeView 中显示从 Image Picker 捕获的图像:

- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingImage:(UIImage *)image editingInfo:(NSDictionary *)editingInfo {
    imvOriginalImage.image = image;
}

对于裁剪,我必须将此图像转换为 CGImageRef。图像以纵向模式拍摄。现在,当我在 CGImageRef 中转换此图像时,图像方向会发生变化。即使我使用以下内容:

- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingImage:(UIImage *)image editingInfo:(NSDictionary *)editingInfo {
    //imvOriginalImage.image = image;
    CGImageRef imgRef = [image CGImage];
    UIImage *img = [UIImage imageWithCGImage:imgRef];
    [imvOriginalImage setImage:img];

}

图像方向改变。这只发生在那些以纵向模式拍摄的图像上。横向图像没有这个问题。

  1. 为什么会这样?
  2. 如何解决这个问题?

提前致谢。

4

1 回答 1

4

这是 iPhone 相机与 Home 按钮相比旋转图像。它使用作为图像元数据的EXIF。看到这个线程:

iPhone图像旋转

于 2012-05-25T06:07:41.013 回答