zoukankan      html  css  js  c++  java
  • 上传图片图像进行压缩后上传

    图片压缩:

    NSData *imageData = UIImageJPEGRepresentation(self.uploadImage , 0.55);

    NSString *file_name = [TimeUtil getDateStringWithFormat:@"yyyy-MM-dd"];


    NSString *upload_name =[NSString stringWithFormat:@"%@.jpg",file_name ];

    [request setData:imageData  withFileName:upload_nameandContentType:@"image/jpeg" forKey:@"upload_file"];

    UIImageJPEGRepresentation 函数须要两个參数:图片的引用和压缩系数.
    UIImagePNGRepresentation仅仅须要图片引用作为參数.
    比較发现:
    UIImagePNGRepresentation(UIImage* image) 要比UIImageJPEGRepresentation(UIImage* image, 1.0) 返回的图片数据量大非常多.
    譬如,相同是读取摄像头拍摄的相同景色的照片
     UIImagePNGRepresentation()返回的数据量大小为199K
     而 UIImageJPEGRepresentation(UIImage* image, 1.0)返回的数据量大小仅仅为140KB
    比前者少了50多KB.

    假设对图片的清晰度要求不高,还能够通过设置 UIImageJPEGRepresentation函数的第二个參数,大幅度减少图片数据量.
    譬如,刚才拍摄的图片, 通过调用UIImageJPEGRepresentation(UIImage* image, 1.0)读取数据时,返回的数据大小为140KB

    但更改压缩系数后,通过调用UIImageJPEGRepresentation(UIImage* image, 0.5)读取数据时,返回的数据大小仅仅有11KB多,

    大大压缩了图片的数据量

    并且从视角角度看,图片的质量并没有明显的减少.因此,在读取图片数据内容时,建议优先使用UIImageJPEGRepresentation


  • 相关阅读:
    一款纯css3实现的响应式导航
    一款基于TweenMax.js的网页幻灯片
    4款基于jquery的列表图标动画切换特效
    随着鼠标移动的文字阴影
    一款纯css实现的垂直时间线效果
    一款基于jquery的侧边栏导航
    (转) 共享个很棒的vim配置
    [Leetcode] String to Integer (atoi)
    dia无法输入中文?
    [Leetcode] Sum Root to Leaf Numbers
  • 原文地址:https://www.cnblogs.com/lcchuguo/p/4029572.html
Copyright © 2011-2022 走看看