您的位置:首页 > 产品设计 > UI/UE

UIImage 和 NSString 之间的互转

2015-10-16 09:50 411 查看
近期在项目需求中,有上传图片到服务器的需求,不过一般上传图片到服务器,通常会采用把图片转化成NSString进行上传。同样,有时候服务器下发的图片,除了是一个图片URL外,还有可能直接把图片返回,避免客户端再次请求,那这时候就需要NSString转化成UIImage了。

那其实实现这两个需求很简单:

一、图片转换成字符串

-(NSString *)UIImageToBase64Str:(UIImage *) image
{
NSData *data = UIImageJPEGRepresentation(image, 0.6f);
NSString *encodedImageStr = [data base64EncodedStringWithOptions:NSDataBase64Encoding64CharacterLineLength];
return encodedImageStr;
}


注:0.6f.指的是,图片压缩率,一般图片都过大,为了减少转换成nsdata所需要的时间和服务器的压力,一般会对图片进行压缩

二、字符串转换成图片

-(UIImage *)Base64StrToUIImage:(NSString *)encodedImageStr
{
NSData  *decodedImageData   = [[NSData alloc] initWithBase64Encoding:encodedImageStr];
UIImage *decodedImage       = [UIImage imageWithData:_decodedImageData];
return decodedImage;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: