开始在一个快速的应用程序中处理相机我有以下的代码块(我从网上获得)正常工作。
previewLayer = AVCaptureVideoPreviewLayer(session: captureSession)
self.view.layer.addSublayer(previewLayer!)
previewLayer?.frame = self.view.layer.frame
captureSession.startRunning()
我现在想修改它,所以我可以决定镜头的形状,此时它是一个标准的矩形。
我必须能够使用椭圆,星形,多边形......或其他任何东西。
我认为我应该在previewLayer
工作,但我对此并不确定,更重要的是我不知道该怎么做。
答案 0 :(得分:1)
如果这可能对其他人有用,我在这里发布我找到的解决方案,以椭圆形为例。
previewLayer = AVCaptureVideoPreviewLayer(session: captureSession)
self.view.layer.addSublayer(previewLayer!)
previewLayer?.frame = self.view.layer.frame
let maskLayer = CAShapeLayer()
maskLayer.path = CGPathCreateWithEllipseInRect(CGRect(x: 50.0, y: 100.0, width: 200.0, height: 100.0), nil)
previewLayer!.mask = maskLayer
captureSession.startRunning()