UIImage 和 NSString 之间的互转

来源:互联网 发布:linux就该这么学 在线 编辑:程序博客网 时间:2024/06/05 15:38

近期在项目需求中,有上传图片到服务器的需求,不过一般上传图片到服务器,通常会采用把图片转化成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;  }  


1 0
原创粉丝点击