如何使用 Swift 从 NSData 创建 NSImage
How to create a NSImage from a NSData with Swift
很抱歉问这么简单,但这是我在 Swift 中的第一个程序...我尝试从 NSData 创建一个 NSImage,其中包含我从磁盘加载的 JPEG 图像(URL 在数组中名称 choseFiles[]).
编译器第二次发出错误,我卡住了:'NSData' 不能隐式转换为 'Data';您是要使用 'as' 来显式转换吗?
谢谢
let imageAsNSData = NSData(contentsOf: chosenFiles[0]) // UIKit/UIImage for iOS not MacOS !
let imageAsNSImage = NSImage(data: imageAsNSData)
if (imageAsNSImage) {
// image could be created from NSData
//
} else {
// image could NOT be created from NSData
//
}
----- 编辑 -----
我试过了
let imageAsNSImage = NSImage(data: imageAsNSData! as Data)
if (imageAsNSImage != nil) {
这似乎有效(至少对于编译器而言)。我对么?
现在在 swift3 中 NSData 被 Data 取代了。当您从 url 下载图像时,将其存储为数据而不是 NSData。
imageView.image = NSImage.init(data: data! as Data)
您可以使用 swift 数据获取您的图像:
do {
let imageData = try Data(contentsOf: chosenFiles[0])
NSImage(data: imageData)
} catch {
print("Unable to load data: \(error)")
}
很抱歉问这么简单,但这是我在 Swift 中的第一个程序...我尝试从 NSData 创建一个 NSImage,其中包含我从磁盘加载的 JPEG 图像(URL 在数组中名称 choseFiles[]).
编译器第二次发出错误,我卡住了:'NSData' 不能隐式转换为 'Data';您是要使用 'as' 来显式转换吗?
谢谢
let imageAsNSData = NSData(contentsOf: chosenFiles[0]) // UIKit/UIImage for iOS not MacOS !
let imageAsNSImage = NSImage(data: imageAsNSData)
if (imageAsNSImage) {
// image could be created from NSData
//
} else {
// image could NOT be created from NSData
//
}
----- 编辑 -----
我试过了
let imageAsNSImage = NSImage(data: imageAsNSData! as Data)
if (imageAsNSImage != nil) {
这似乎有效(至少对于编译器而言)。我对么?
现在在 swift3 中 NSData 被 Data 取代了。当您从 url 下载图像时,将其存储为数据而不是 NSData。
imageView.image = NSImage.init(data: data! as Data)
您可以使用 swift 数据获取您的图像:
do {
let imageData = try Data(contentsOf: chosenFiles[0])
NSImage(data: imageData)
} catch {
print("Unable to load data: \(error)")
}