如何从UIImage获取URL?我从iPhone库中获取了一张图片并将其调整大小,但我不想保存新图片,而是想获取它的URL。
如何从UIImage获取URL?我从iPhone库中获取了一张图片并将其调整大小,但我不想保存新图片,而是想获取它的URL。
你说你不想保存它,但如果你需要一个UIImage
的URL,你可以轻松保存一个临时副本以获取所需的URL。
对于较新的Swift 5:
// Create a URL in the /tmp directory
guard let imageURL = NSURL(fileURLWithPath: NSTemporaryDirectory()).appendingPathComponent("TempImage.png") else {
return
}
let pngData = image.pngData();
do {
try pngData?.write(to: imageURL);
} catch { }
现在您可以使用URL将图像分享到社交媒体或其他需要的地方。
对于之前的Swift版本:
// Create a URL in the /tmp directory
guard let imageURL = NSURL(fileURLWithPath: NSTemporaryDirectory()).appendingPathComponent("TempImage.png") else {
return
}
// save image to URL
do {
try UIImagePNGRepresentation(myImage)?.write(to: imageURL)
} catch { }
更多信息请查看这里。
UIImage没有URL或文件信息,只是一个表示像素颜色数据的字节集合。如果您从UIImagePicker获取UIImage,则可以在资源库中获取原始图像的URL。但必须在图像选择器委托方法中获取此URL,并且必须将其与UIImage对象分开跟踪。
编辑-根据OP的评论,这不是所请求的信息。
UIImagePickerControllerReferenceURL
参数。您需要执行以下操作:NSURL* imageURL = [info objectForKey:UIImagePickerControllerReferenceURL];
assets-library://asset/asset.JPG?id=SOME_GUUID&ext=JPG
UIImage*
对象包含的相同图像。+ (id) initWithURL:(NSURL*)url
{
[super initWithURL:url];
self.url = url;
}