gpt4 book ai didi

ios - 你能从 IOS 中的 assetURL 获取图像文件名吗?

转载 作者:行者123 更新时间:2023-11-28 06:21:19 25 4
gpt4 key购买 nike

我正在使用 ALAssetsLibrary 将图像保存到照片库并打印出图像文件的 url。我注意到照片以 IMG_####.jpg 格式保存到 ios 设备,其中 #### 是一些数字。我想获取刚刚保存的图像的文件名。无论如何要从 url 中获取这个 IMG_####.jpg 文件名?

assetLib.writeImage(toSavedPhotosAlbum: imageToSave.cgImage, orientation: ALAssetOrientation(rawValue: imageToSave.imageOrientation.rawValue)!, completionBlock: {(url,error) -> Void in
print("image url: \(url)")

输出

image url: Optional(assets-library://asset/asset.JPG?id=56963951-1CE3-4A1A-B693-804899C79BA5&ext=JPG)

在此链接的评论中,有人正在做我想做的事情,但是我不太熟悉 objective-c ,也没有使用 imagePickerController。如果有人可以向我解释如何在没有 imagePickerController 的情况下在 Swift 中执行此操作,那就太棒了。

http://ootips.org/yonat/how-to-set-the-image-name-when-saving-to-the-camera-roll/

最佳答案

我想知道是否还有其他人有兴趣做同样的事情。感谢我发布的链接,我刚刚将它翻译成 Swift。

    let assetLib = ALAssetsLibrary()
//Save image get access to the url in completion handler
assetLib.writeImage(toSavedPhotosAlbum: imageToSave.cgImage, orientation: ALAssetOrientation(rawValue: imageToSave.imageOrientation.rawValue)!, completionBlock: {(url,error) -> Void in
let phAsset = PHAsset.fetchAssets(withALAssetURLs: [url!], options: nil)
let lastPhAsset = phAsset.lastObject
let asset = assetLib.asset(for: url, resultBlock: {(asset) -> Void in
//print("Asset Success!")
let imageRequestOptions = PHImageRequestOptions()
imageRequestOptions.isSynchronous = true
PHImageManager.default().requestImageData(for: lastPhAsset!, options: imageRequestOptions, resultHandler: {
(data,string,orientation,diction) -> Void in


let filename = diction![AnyHashable("PHImageFileURLKey")]!
// You should have the correct filename here.
//print("Filename = \(filename)")
})

}, failureBlock: {(error) -> Void in
print("Failed to retrieve a asset from url.")
return
})


})

关于ios - 你能从 IOS 中的 assetURL 获取图像文件名吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43382303/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com