2012-05-25 3 views
5

맞춤 크롭으로 이미지를 자르려고합니다. UIImagePickerController의 것이 아닙니다. 이제 내가이 UIImagePicker의 대리자를 처리하여 UIImgeView에 이미지 피커에서 캡처 한 이미지를 보여주는 오전 : 자르기UIImage를 CGImage로 변환하면 이미지가 회전합니다.

- (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. 어떻게 해결할 수 있습니까?

감사의 말 전진.

+1

이입니다. –

답변

4

iPhone 카메라가 홈 버튼과 비교하여 이미지를 회전한다는 것입니다. 이미지의 메타 데이터 인 EXIF을 사용합니다. 이 스레드를 참조하십시오 :`UIImage`가 CGImageRef`이 알지 못하는 '이미지를 회전에 대해 이미 알고`imageOrientation` 속성을 가지고 있지만, 때문에

iPhone image rotation

관련 문제