国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 系統 > iOS > 正文

iOS開發之image圖片壓縮及壓縮成指定大小的兩種方法

2020-07-26 02:37:51
字體:
來源:轉載
供稿:網友

///壓縮圖片+ (NSData *)imageCompressToData:(UIImage *)image{  NSData *data=UIImageJPEGRepresentation(image, 1.0);  if (data.length>300*1024) {    if (data.length>1024*1024) {//1M以及以上      data=UIImageJPEGRepresentation(image, 0.1);    }else if (data.length>512*1024) {//0.5M-1M      data=UIImageJPEGRepresentation(image, 0.5);    }else if (data.length>300*1024) {//0.25M-0.5M      data=UIImageJPEGRepresentation(image, 0.9);    }  }  return data;}

ps:下面看下 iOS中圖片壓縮成指定的大小

 iOS中,我們為了節省內存,需要對圖片來進行處理,來優化程序,提高程序的效率,下面是一個根據自己的要求來重新設置圖片的大小:

一、壓縮圖片有兩種方式,第一種是壓縮圖片的大小,重新生成圖片的尺寸:如下

/**  * 壓縮圖片到指定尺寸大小  *  * @param image 原始圖片  * @param size 目標大小  *  * @return 生成圖片  */ -(UIImage *)compressOriginalImage:(UIImage *)image toSize:(CGSize)size{   UIImage * resultImage = image;   UIGraphicsBeginImageContext(size);   [resultImage drawInRect:CGRectMake(00, 0, size.width, size.height)];   UIGraphicsEndImageContext();   return image; } 

二、第二種是修改圖片的文件大小:如下

/**  * 壓縮圖片到指定文件大小  *  * @param image 目標圖片  * @param size 目標大小(最大值)  *  * @return 返回的圖片文件  */ - (NSData *)compressOriginalImage:(UIImage *)image toMaxDataSizeKBytes:(CGFloat)size{   NSData * data = UIImageJPEGRepresentation(image, 1.0);   CGFloat dataKBytes = data.length/1000.0;   CGFloat maxQuality = 0.9f;   CGFloat lastData = dataKBytes;   while (dataKBytes > size && maxQuality > 0.01f) {     maxQuality = maxQuality - 0.01f;     data = UIImageJPEGRepresentation(image, maxQuality);     dataKBytes = data.length / 1000.0;     if (lastData == dataKBytes) {       break;     }else{       lastData = dataKBytes;     }   }   return data; } 

這是壓縮圖片的兩種方式。

總結

以上所述是小編給大家介紹的iOS開發之image圖片壓縮及壓縮成指定大小的兩種方法,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對武林網網站的支持!

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 韶关市| 阳朔县| 阿拉善右旗| 饶阳县| 宁蒗| 怀集县| 大厂| 务川| 金塔县| 青海省| 崇义县| 兰坪| 安新县| 成安县| 乌苏市| 波密县| 呈贡县| 德州市| 库伦旗| 玉树县| 木兰县| 萨嘎县| 马尔康县| 金川县| 教育| 玉山县| 东光县| 宁安市| 汶上县| 隆昌县| 屏东市| 哈密市| 台南县| 海原县| 湟源县| 曲水县| 桃江县| 桐庐县| 深泽县| 理塘县| 凌海市|