У меня есть UIImageView, который получает UIImage с камеры. Когда я переключаюсь на фронтальную, я должен зеркально отразить изображение, которое исходит от камеры или выглядит странно. Я устанавливаю изображения на просмотр просто с помощью
DispatchQueue.main.async {
self.filteredImageView.image = filteredImage
}
. Сначала я думал, что смогу перевернуть изображение с помощью
self.filteredImageView.image = filteredImage.withHorizontallyFlippedOrientation()
Но это не работает. Хотя ориентация UIImage изменяется (enum печатается по-разному), изображение выглядит точно так же. Вместо этого я должен сделать
if self.cameraManager.cameraPosition == .front {
// Mirror the image view for front camera
self.filteredImageView.transform = CGAffineTransform(scaleX: -1.0, y: 1.0)
} else {
self.filteredImageView.transform = CGAffineTransform(scaleX: 1.0, y: 1.0)
}
Итак, мой вопрос - почему? Из того, что я понимаю, .orientation диктует, как будет нарисовано изображение, и разве оно не нарисовано в виде?