Можно ли ПРОСТО изменить соотношение сторон UIImage
, снятого с помощью UIImagePickerController
?
Я использую настраиваемый оверлей, поэтому я не использую функции редактирования или элементы управления камерой.
Я бы хотел, чтобы мои изображения были 16: 9. Я не хочу, чтобы они были маленькими или каким-либо образом регулировали размер. Я знаю, что изменение соотношения сделает это, но я не знаю правильного математического подхода, чтобы сделать это, чтобы сохранить лучшее качество.
Я пытался это сделать при создании UIImagePicker
, но изображение камеры на экране очень маленькое. В идеале я бы хотел, чтобы он оставался полноэкранным, но только после того, как я сделал снимок, изменилось соотношение сторон изображения.
let screenBounds = UIScreen.main.bounds.size
let cameraAspectRatio: CGFloat = 16.0/9.0
let camViewHeight: CGFloat = screenBounds.width * cameraAspectRatio
let scale: CGFloat = screenBounds.height / camViewHeight
self.imagePicker.cameraViewTransform = CGAffineTransform(translationX: 0, y: (screenBounds.height - camViewHeight)/2.0)
self.imagePicker.cameraViewTransform = self.imagePicker.cameraViewTransform.scaledBy(x: scale, y: scale)
Также в didFinishPickingMediaWithInfo
я использую UIImagePickerControllerOriginalImage
, так как я не разрешаю какие-либо функции редактирования с собственной камеры iOS после съемки изображения. Причина в том, что я разрешаю пользователю делать несколько изображений одновременно, прежде чем закрыть средство выбора.
Нужно ли мне настраивать соотношение сторон в didFinishPickingMediaWithInfo
?