Как обрезать изображение после взятия с камеры UIImagePicker? - PullRequest
6 голосов
/ 01 декабря 2009

Я пытаюсь позволить пользователю делать снимки с соотношением сторон 16x9, чтобы они выглядели как хорошие фотографии HD. Я использую cameraViewOverlay для наложения черных полос на обоих концах, но когда я получаю изображение, как мне обрезать верх и низ без изменения размера или масштаба изображения?

Спасибо.

Ответы [ 3 ]

2 голосов
/ 01 декабря 2009

Существуют различные сообщения о том, как масштабировать / обрезать UIImage, который вы получаете от камеры, например этот .

Это немного сложнее, чем вы ожидаете, потому что изображения с камеры поворачиваются, поэтому вы должны думать о поворотах, даже если вы просто обрезаете.

1 голос
/ 07 июля 2015

Проверьте это решение от Ming Yang. https://github.com/myang-git/iOS-Image-Crop-View

Это позволяет пользователю обрезать изображение, сдвигая или перетаскивая края прямоугольника вокруг требуемой части изображения. Я предполагаю, что этот код может быть изменен в соответствии с вашими требованиями, будь то автоматический или ручной.

Кодируется в Objective-C. Возможно, вам придется либо кодировать его в Swift, либо просто создать мостовой заголовок, чтобы связать код Objective C с кодом Swift.

1 голос
/ 03 марта 2011

вы можете добавить «picker.imageEditing = YES» в ваш код, когда вы берете изображение. Затем вы должны установить свойства imageView в конструкторе интерфейса: Атрибуты просмотра изображения -> Вид -> Режим -> Подгонка по размеру или другая опция по вашему желанию

...