[英]save arkit snapshot directly to photo gallery swift 4
下面我的代碼部分拍攝了arkit的快照並將其放在圖像視圖上。 我正試圖將其剪掉並從拍攝照片並自動將其保存到照片庫,而無需先將其放在圖像視圖上。
@IBOutlet var cryMeARiver: UIImageView!
@IBOutlet weak var augmentedRealityView: ARSCNView!
@IBAction func place(_ sender: Any) {
//THIS LINE OF THE CODE BELOW SAVES THE SNAPSHOT TO THE IMAGEVIEW
cryMeARiver.image = augmentedRealityView.snapshot()
}
由於snapshot
功能返回UIImage
,因此很容易將其保存到IOS Photo Library
。
在開始之前,您需要確保在info.plist
中設置了以下密鑰:
<key>NSPhotoLibraryUsageDescription</key>
<string>To Save Your ARKit Scenes</string>
然后你可以像這樣調用你的函數:
@IBAction func saveScreenhot(){
//1. Create A Snapshot
let snapShot = self.augmentedRealityView.snapshot()
//2. Save It The Photos Album
UIImageWriteToSavedPhotosAlbum(snapShot, self, #selector(image(_:didFinishSavingWithError:contextInfo:)), nil)
}
當然要記住使用回調方法來檢查進程是否成功:
@objc func image(_ image: UIImage, didFinishSavingWithError error: Error?, contextInfo: UnsafeRawPointer) {
if let error = error {
print("Error Saving ARKit Scene \(error)")
} else {
print("ARKit Scene Successfully Saved")
}
}
希望能幫助到你...
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.