Forçar UIImagePickerController a tirar foto em orientação retrato / dimensões iOS

A única orientação permitida no meu aplicativo é paisagem. Eu forço isso nas propriedades do projeto em target> summery e só permiti retrato emshouldAutorotateToInterfaceOrientation

O problema é quando eu tiro uma foto enquanto seguro o telefone horizontalmente (paisagem), a foto será tirada na orientação paisagem, enquanto a interface do usuário permanece no modo retrato.

Isso significa que no modo paisagem eu recebo uma imagem ampla de 3264 x 2448 em vez da imagem alta (2448 x 3264) eu recebo no modo retrato.

Em seguida, o usuário pode cortar a imagem, mas se a imagem for tirada no modo paisagem, recebo imagens muito feias. Adicionar bordas ou alternar a interface do usuário para paisagem não é uma opção.

Existe uma maneira de forçar oUIImagePickerController tirar uma foto em dimensões retrato mesmo que o telefone esteja na horizontal (modo paisagem)?

Eu inicializo oUIImagePickerController com as seguintes configurações:

    imagePicker =[[UIImagePickerController alloc] init];
    imagePicker.sourceType = UIImagePickerControllerSourceTypeCamera;
    imagePicker.cameraCaptureMode = UIImagePickerControllerCameraCaptureModePhoto;
    imagePicker.cameraDevice = UIImagePickerControllerCameraDeviceRear;
    imagePicker.showsCameraControls = NO;
    imagePicker.modalPresentationStyle = UIModalPresentationFullScreen;
    imagePicker.wantsFullScreenLayout = YES;
    imagePicker.cameraViewTransform = CGAffineTransformScale(imagePicker.cameraViewTransform,CAMERA_TRANSFORM, CAMERA_TRANSFORM);
    imagePicker.navigationBarHidden = YES;
    imagePicker.toolbarHidden = YES;
    [self presentModalViewController:imagePicker animated:NO];
    imagePicker.cameraOverlayView = self.cameraOverlay;
    imagePicker.cameraFlashMode = UIImagePickerControllerCameraFlashModeOff;

questionAnswers(1)

yourAnswerToTheQuestion