在Swift 3中将更改的图像保存到相机胶卷

时间:2017-04-13 17:50:30

标签: swift3 uiimage ios10

以下功能将背景图像保存到相机胶卷中。最终,它是我的自定义相机刚拍摄的图像。

UIImageWriteToSavedPhotosAlbum(self.backgroundImage!, self, #selector(self.image(_:didFinishSavingWithError:contextInfo:)), nil)

但是如何保存已更改的图像?例如,我在上面放了一个文本字段。我应该使用哪个变量而不是backgroundImage?或者我应该使用不同的功能,如UIGraphicsImageRenderer?

我们非常感谢您的帮助。

1 个答案:

答案 0 :(得分:4)

要从当前视图中获取图像,您可以使用例如CoreGraphics。下面的片段假定在视图控制器中实现并呈现它的整个视图:

UIGraphicsBeginImageContext(self.view.frame.size)
if let ctx = UIGraphicsGetCurrentContext() {

    self.view.layer.render(in: ctx!)
    let renderedImage = UIGraphicsGetImageFromCurrentImageContext()
    UIGraphicsEndImageContext() //remember to end context to not cause memory leak
}

其中renderedImage是包含文字的图片,前提是文字字段位于呈现时的视图中。