我想加载UIImage
对象NSData
,示例代码是NSImage
,我猜他们应该是一样的。但现在刚刚加载图像,我想知道什么是最好的解决UIImage
加载NSData
问题。NSData和UIImage
58
A
回答
43
UIImage有一个 - initWithData:
方法。从文档:“数据参数中的数据必须格式化以匹配系统支持的图像类型之一的文件格式。”
3
该数据应该是一个已经包含数据的NSData
对象。在使用它之前,您需要将文件加载/下载到NSData
对象。您可以通过在数据上使用NSLog
来检查它是否包含有效数据。
105
我没有尝试UIImageJPEGRepresentation()
过,但UIImagePNGRepresentation
对我的作品的罚款,并转换NSData
和UIImage
之间是死的简单:
NSData *imageData = UIImagePNGRepresentation(image);
UIImage *image=[UIImage imageWithData:imageData];
21
尝试使用此方法将图像转换为NSData的:
UIImage *img = [UIImage imageNamed:@"image.png"];
NSData *data1 = UIImagePNGRepresentation(img);
0
为了安全地执行代码,使用带数据的if-let块,作为函数UIImagePNGRepresentation返回可选值。
if let img = UIImage(named: "Hello.png") {
if let data:Data = UIImagePNGRepresentation(img) {
// Handle operations with data here...
}
}
注:数据是斯威夫特3类。使用数据,而不是NSData的与 斯威夫特3个
通用图像操作(如png格式& JPG两种):
if let img = UIImage(named: "Hello.png") {
if let data:Data = UIImagePNGRepresentation(img) {
handleOperationWithData(data: data)
} else if let data:Data = UIImageJPEGRepresentation(img, 1.0) {
handleOperationWithData(data: data)
}
}
*******
func handleOperationWithData(data: Data) {
// Handle operations with data here...
if let image = UIImage(data: data) {
// Use image...
}
}
通过使用扩展:
extension UIImage {
var pngRepresentationData: Data? {
return UIImagePNGRepresentation(img)
}
var jpegRepresentationData: Data? {
return UIImageJPEGRepresentation(self, 1.0)
}
}
*******
if let img = UIImage(named: "Hello.png") {
if let data = img.pngRepresentationData {
handleOperationWithData(data: data)
} else if let data = jpegRepresentationData {
handleOperationWithData(data: data)
}
}
*******
func handleOperationWithData(data: Data) {
// Handle operations with data here...
if let image = UIImage(data: data) {
// Use image...
}
}
相关问题
- 1. NSData - > UIImage - > NSData?
- 2. NSData - > UIImage - > NSData
- 3. IPhone NSData到UIImage
- 4. NSData加载UIImage
- 5. NSData到UIImage
- 6. 从NSData UIImage转换
- 7. NSData到uiimage返回null
- 8. 将NSData [UIImage]转换为NSString
- 9. 逆向NSData到UIImage转换?
- 10. 将UIImage转换为NSData
- 11. 从UIImage获取底层NSData *
- 12. 转换UIimage(拍照)到NSData
- 13. UIImage> NSData> NSString失败
- 14. UIImage神秘地转换为NSData
- 15. 从NSData获取较低质量的UIImage?
- 16. UIImage的NSData的有没有大小
- 17. 如何NSData的值转换为UIImage的
- 18. 如何处理NSData并返回UIImage(Swift)
- 19. 转换的NSData到的UIImage - 用的NSURLRequest
- 20. UIImage不能正确转换NSData
- 21. 将UIImage的NSData表示转换为NSImage
- 22. NSData格式的跨平台UIImage NSImage
- 23. UITableView中的NSData的UIImage - 性能问题
- 24. 无法使用UIImage形成NSData
- 25. UIImage与NSData - 图像压缩依赖
- 26. 我如何获得uiimage的原始nsdata?
- 27. 如何将UIImage转换为NSData或CFDataRef?
- 28. 如何绘制PDF NSData到UIImage?
- 29. 从NSData UIImage以错误的方向
- 30. 如何将NSData转换为UIImage?
是的,那是我在用。 NSData具有地址,而在调用UIImaeg -initWithData:theData之后,该点变为0.我不确定在哪里看到错误消息。 – BlueDolphin 2008-11-03 00:24:22