Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/104.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios AVFoundation定制摄像头-用于拍摄的UIImage照片拉伸和反转_Ios_Uiviewcontroller_Uiimage_Avfoundation_Ios Camera - Fatal编程技术网

Ios AVFoundation定制摄像头-用于拍摄的UIImage照片拉伸和反转

Ios AVFoundation定制摄像头-用于拍摄的UIImage照片拉伸和反转,ios,uiviewcontroller,uiimage,avfoundation,ios-camera,Ios,Uiviewcontroller,Uiimage,Avfoundation,Ios Camera,我试图有一个自定义相机辊使用AVFoundation,方形显示和圆形遮罩。在ViewController中,我添加了 UIView(用于摄影机的实时预览) UIImage(用于拍摄照片) UIImage(用于圆形遮罩) 我使用了self.preview?.videoGravity=AVLayerVideoGravityResizeAspectFill;所以我做到了 但是,当我点击“拍照”时,UIImage会显示捕获的图像错误。它被拉伸(也被反转),即使它的约束被锁定为与PreviewUI视

我试图有一个自定义相机辊使用AVFoundation,方形显示和圆形遮罩。在ViewController中,我添加了

  • UIView(用于摄影机的实时预览)

  • UIImage(用于拍摄照片)

  • UIImage(用于圆形遮罩)

我使用了self.preview?.videoGravity=AVLayerVideoGravityResizeAspectFill;所以我做到了

但是,当我点击“拍照”时,UIImage会显示捕获的图像错误。它被拉伸(也被反转),即使它的约束被锁定为与PreviewUI视图相同的宽度和高度,所以对我来说,它应该得到正确的大小

遮罩的UIImage约束是相同的,可以正常工作。但是对于拍摄的照片,它位于导航栏后面,并且延伸到底部(即使UIImage已选择AspectFill)


也许我在设置约束时犯了一个错误。如果有任何帮助,我将不胜感激,因为我无法找出问题的原因

选择您的图像视图,并在属性检查器中选中
剪辑子视图
!谢谢!另外,你知道是什么导致它倒转吗?很高兴它对你有用!!:)为了充分说明,面部摄影机的默认行为是拍摄垂直倒置的照片。用这个方法解决了这个问题:
让flipImage=UIImage(CGImage:.CGImage)!,比例:1.0,方向:.LeftMirrored)
你用的是前置摄像头吗?