Получить правильное свойство ориентации изображения из фотобиблиотеки

В своем приложении для iPhone я беру изображение с помощью UIImagePickerController из PhotoLibrary. Как я могу получить правильное свойство imageOrientation?

Обновление В любом случае я получаю UIImageOrientationUp

4 ответа

Используйте этот метод, как для изображения с именем "image1"

[self checkImageOrientaionImage: image1];

Метод:

-(void)checkImageOrientaionImage:(UIImage*)image
{

    if (image.imageOrientation == UIImageOrientationUp)
    {
        NSLog(@"portrait");
    }
   else if (image.imageOrientation == UIImageOrientationLeft || image.imageOrientation == UIImageOrientationRight)
    {
       NSLog(@"landscape");
    }

}

 - (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info {

        UIImage *image = [info objectForKey:UIImagePickerControllerOriginalImage];
        UIImageOrientation imageOrientation = image.imageOrientation;

    }

Важный: класс UIImagePickerController поддерживает только портретный режим. Этот класс предназначен для использования как есть и не поддерживает создание подклассов. Иерархия представления для этого класса является частной и не должна изменяться, за одним исключением. Вы можете назначить собственное представление свойству cameraOverlayView и использовать это представление для представления дополнительной информации или управления взаимодействиями между интерфейсом камеры и вашим кодом.

Согласно Ссылке класса UIImagePickerController

Проверьте также этот вопрос: стек через поток ссылки

Напишите этот код в своем методе делегата didFinishPickingMediaWithInfo

Получить UIImage из информационного словаря.

А потом использовать это UIImageOrientation orient = image.imageOrientation;

Другие вопросы по тегам