朋友我用AVFoundation和Swift来抓拍照片。在我的代码下面
func captureImage(completion: @escaping (UIImage?, Error?) -> Void) {
guard let captureSession = captureSession, captureSession.isRunning
else { completion(nil, CameraControllerError.captureSessionIsMissing); return }
let settings = AVCapturePhotoSettings()
settings.flashMode = self.flashMode
self.photoOutput?.capturePhoto(with: settings, delegate: self)
self.photoCaptureCompletionBlock = completion
}如何使用AVFoundation将图片只捕获到文档应用目录?我想也许可以捕获到标准的相机胶卷,然后将图像保存到文档中并从相机胶卷中删除。但我觉得这不是个好主意。
如何只保存到单据?请帮帮忙
发布于 2018-09-09 03:43:58
我还没有使用新的图像捕获流程,但我在文档中做了一些研究。
引用AVCapturePhoto中的文档:
使用AVCapturePhotoOutput类捕获照片时,委托对象将以AVCapturePhoto对象的形式接收每个生成的图像和相关数据。这个对象是一个不可变的包装器,您可以从中检索照片捕获的各种结果。
如果您在Xcode文档中查看AVCapturePhoto,就会发现有一个方法fileDataRepresentation()将返回准备好写入文件的图像数据(数据格式由您创建的AVCapturePhotoSettings中的设置决定)。您可以简单地将该数据保存到您的文档目录中。
AVCapturePhoto还有一个函数cgImageRepresentation(),它将为您提供捕获的照片的CGImage,然后您可以根据需要进行处理。
https://stackoverflow.com/questions/52237335
复制相似问题