Как обрезать изображение после съемки с камеры UIImagePicker?
-
22-07-2019 - |
Вопрос
Я пытаюсь позволить пользователю делать изображения с соотношением сторон 16x9, чтобы они выглядели так, как будто это хорошие фотографии HD.Я использую cameraViewOverlay для наложения черных полос на обоих концах, но когда изображение снято, как мне обрезать верх и низ без изменения размера или масштаба изображения?
Спасибо.
Решение
Существуют различные сообщения о том, как масштабировать/обрезать UIImage, который вы получаете с камеры, например Вот этот.
Это немного сложнее, чем вы ожидаете, поскольку изображения с камеры поворачиваются, поэтому вам придется думать о поворотах, даже если вы просто обрезаете.
Другие советы
вы можете добавить «picker.imageEditing=YES» в свой код, когда делаете изображение.Затем вам нужно установить свойства imageView в конструкторе интерфейса:Атрибуты просмотра изображения -> Вид -> Режим -> Соответствие формата или другой вариант по вашему желанию.
Проверьте это решение Мин Янга.https://github.com/myang-git/iOS-Image-Crop-View
Он позволяет пользователю обрезать изображение, сдвинув или перетащив края прямоугольника вокруг необходимой части изображения.Я предполагаю, что этот код можно изменить в соответствии с вашими потребностями в обрезке, будь то автоматическая или ручная.
Он написан на Objective-C.Возможно, вам придется либо написать его на Swift, либо просто создать связующий заголовок, чтобы соединить код Objective-C с кодом Swift.