朋友 我使用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仅将图像捕获到Documents应用程序目录? 我认为也许可以捕获到标准相机胶卷,然后将图像保存到文档并从相机胶卷中删除。但是我认为这是个坏主意。
如何仅保存到文档? 请帮助
答案 0 :(得分:0)
我还没有使用新的图像捕获流程,但是我在文档中做了一些研究。
在AVCapturePhoto中引用文档:
使用AVCapturePhotoOutput类捕获照片时,您的 委托对象接收每个结果图像和相关数据 形式的AVCapturePhoto对象。该对象是不可变的包装器 从中可以检索照片捕获的各种结果。
如果您查看Xcode文档中的237 222 28 66 = 39.218
189 59 182 65 = 22.779
107 42 41 65 = 10.573
33 173 79 63 = 0.8114
0 0 128 63 = 1.0000
146 41 41 65 = 10.573
0 0 30 66 = 39.500
0 0 184 65 = 23.000
,则有一种方法AVCapturePhoto
将返回准备好写入文件的图像数据(数据格式由您设置的AVCapturePhotoSettings确定)创建)。您只需将数据保存到文档目录中即可。
fileDataRepresentation()
还具有功能AVCapturePhoto
,该功能将为您提供所捕获照片的CGImage,然后您可以根据需要对其进行处理。