美文网首页
UIImage 与 NSData 之间的转换

UIImage 与 NSData 之间的转换

作者: zcaaron | 来源:发表于2016-07-09 00:04 被阅读438次

    图片转为二进制数据

    UIImage * image
    // 转为 .jpeg 格式
    NSData * imgData = UIImageJPEGRepresentation( image , 1.0);
    // 转为 .png 格式
    NSData * imgData = UIImagePNGRepresentation( image );
    

    二进制数据转为图片

    
    UIImage *image = [UIImage imageWithData: imageData];
    
    或者 二进制转为字符串
    
    NSString *dataString = [[NSString alloc] initWithData:data encoding:NSUTF16StringEncoding];
    
    

    注:JPEG的转换方法里面第二个参数是压缩系数,可以有效的减小图片的大小。UIImagePNGRepresentation(UIImage* image) 要比UIImageJPEGRepresentation(UIImage* image, 1.0) 返回的图片数据量大很多。项目中做图片上传之前,经过测试同一张拍照所得照片png大小在8M,而JPG压缩系数为0.75时候,大小只有1M。而且,将压缩系数降低对图片视觉上并没有太大的影响.

    相关文章

      网友评论

          本文标题:UIImage 与 NSData 之间的转换

          本文链接:https://www.haomeiwen.com/subject/hhurjttx.html