Перевести CGRect из CALayer в UIImage - PullRequest
0 голосов
/ 05 февраля 2019

У меня есть приложение камеры, которое показывает предварительный просмотр видео в экземпляре AVCaptureVideoPreviewLayer, который включает в себя CGRect (например, рамку вокруг пользователя).Этот слой имеет тот же размер, что и UIView, который содержит слой (например, 667x375).

Как мне перевести CGRect из координатного пространства слоя в вывод изображения?

1 Ответ

0 голосов
/ 09 февраля 2019

Я нашел ответ сам;правильный способ - использовать метод metadataOutputRectConverted.

        let tempRect = layer.metadataOutputRectConverted(fromLayerRect: rect)
        let trans_rect = CGRect(x: tempRect.origin.x * image.size.width,
                                y: tempRect.origin.y * image.size.height,
                                width: tempRect.width * image.size.width,
                                height: tempRect.height * image.size.height)

, где image - это UIImage экземпляр.

...