Как перевернуть по UIImage
горизонтали, я нашел UIImageOrientationUpMirrored
значение перечисления в UIImage
ссылке на класс, как использовать это свойство для переворота UIImage
.
ios
uiimage
uiimageorientation
Pradeepa
источник
источник
Ответы:
Objective-C
Swift
источник
UIImageOrientationUp
работал, покаUIImageOrientationUpMirrored
не переворачивал его. Это сработало -image = [UIImage imageWithCGImage:image.CGImage scale:image.scale orientation:UIImageOrientationUp]
sourceImage.scale
масштаб.[flippedImage imageWithRenderingMode:UIImageRenderingModeAlwaysTemplate]
. Есть идеи, почему?Очень простой способ добиться этого - создать UIImageView вместо UIImage и выполнить преобразование в UIImageView.
Надеюсь это поможет.
источник
UIImage
манипуляция, которая, как я обнаружил, имела побочные эффекты в сочетании сUIImageRenderingModeAlwaysTemplate
режимом рендеринга.yourImageView.transform = CGAffineTransformIdentity
Вертикальный переворот часто требуется для инициализации текстуры OpenGL с помощью
glTexImage2d(...)
. Предложенные выше приемы на самом деле не изменяют данные изображения и не будут работать в этом случае. Вот код для фактического переворота данных, вдохновленный https://stackoverflow.com/a/17909372источник
Я пробовал использовать imageFlippedForRightToLeftLayoutDirection и создавал новый UIImage с разными ориентациями, но, по крайней мере, это единственное решение, которое я нашел для переворота моего изображения.
Как видите, на моей детской площадке это сработало !! :)
И, конечно, пусть finalImage = UIImage (CIImage: rotada3)
источник
Ориентация изображения определяет:
Я сделал некоторые улучшения для большего количества обстоятельств, таких как обработка UIImage из AVCaptureSession.
источник
вот быстрая версия: (я видел этот вопрос в комментариях)
источник
iOS 10+
Swift 4:
источник
Это надежная реализация для зеркального отображения / отражения UIImage по горизонтали и может применяться к изображению вперед и назад. Поскольку он изменяет базовые данные изображения, рисунок (например, снимок экрана) также изменится. Проверено на работу, без потери качества.
источник
Может быть, это пригодится некоторым:
источник
Для Swift 3/4:
источник
Простое расширение.
Использование:
источник
Это рабочая версия, совместимая с iOS8 / 9:
источник
imageFlippedForRightToLeftLayoutDirection
предназначено для использования с перевернутыми направлениями макета - например, для арабских стран. Поэтому использование этого может не всегда работать должным образом.Протестировано в Swift 3 и выше
Вот простое решение этой проблемы с помощью расширений. Я тестирую, и он работает. Вы можете отзеркаливать в любом направлении.
Использование этого кода
Итак, вы можете использовать другие функции.
источник
Вот один из ответов, измененных выше и в Swift 3, который я нашел особенно полезным, когда у вас есть кнопка, которая должна постоянно переворачивать изображение вперед и назад.
Использование:
источник
Ответ Арота в SWIFT 3:
источник
Swift 4
источник
После разворачивания выполните следующие действия:
источник
вы можете повернуть изображение, как хотите, используя это
SWIFT 4
}
источник
Swift 5 - Xcode 11.5
Лучшее решение для поворота по горизонтали: посмотрите это видео:
https://m.youtube.com/watch?v=4kSLbuB-MlU
Или используйте этот код:
В этой анимации можно использовать любой пользовательский интерфейс (кнопку, метку, пользовательский интерфейс или изображение).
источник