Преобразование UIImage в CGImage приводит к вращению изображения

Я пытаюсь обрезать изображение с помощью моего пользовательского обрезателя. Не из UIImagePickerController. Теперь для этого я показываю изображение, захваченное из Image Picker в UIImgeView, обрабатывая делегата UIImagePicker:

- (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. Как это решить?

Заранее спасибо.

5
задан Kapil Choubisa 25 May 2012 в 06:03
поделиться