从我的UIView屏幕截图,并保存为图像或PDF Swift 5,Xcode 13,iPad



在此处找到:如何在Swift中拍摄全屏截图?

func getScreenshot() -> UIImage {
var window: UIWindow? = UIApplication.shared.keyWindow
window = UIApplication.shared.windows[0] as? UIWindow
UIGraphicsBeginImageContextWithOptions(window!.frame.size, window!.isOpaque, 0.0)
window!.layer.render(in: UIGraphicsGetCurrentContext()!)
let image = UIGraphicsGetImageFromCurrentImageContext()
UIGraphicsEndImageContext()
return image!
}

我想使用此代码从我的视图控制器中获取图像。之后,我想将图像保存到我的照片库中,以便打印和通过邮件发送。

只有当我在返回图像的倒数第二行添加此代码时!:

UIImageWriteToSavedPhotosAlbum(image, nil, nil, nil)

,我得到了";信号SIGABRT";错误

在我的info.plist中,我试图添加:Privacy-Photo Library Usage Description,但没有任何值。有人能帮我找出哪里出了问题吗?另一种选择是将屏幕截图保存为pdf格式的任何文件夹,以便稍后发送和打印。谢谢你的提示。

使用NSPhotoLibraryAddUsageDescription(隐私-照片库添加使用说明(

NSPhotoLibraryAddUsageDescription

一条消息,告诉用户应用程序请求对用户照片库进行写访问的原因。

重要

如果您的应用程序使用对用户照片库具有写访问权限的API,则需要此密钥。

最新更新