iOS中圖片壓縮

1.對圖片進(jìn)行壓縮,利用iOS的API提供的函數(shù)進(jìn)行壓縮:

NSData *imageData = UIImageJPEGRepresentation(image,0.5);

返回的是二進(jìn)制的data值,可以通過打印知道大小確實(shí)減少了好多,通過此方法確實(shí)能優(yōu)化性能,需要注意的是這個0.5,并不是說壓縮到之前圖片的二分之一 ,應(yīng)該是個系數(shù)之類的數(shù)值,這樣的話圖片壓縮之后性能會好很多,但是不建議這個,因?yàn)榻鈮嚎s的時候很耗費(fèi)性能,而且壓縮后的圖片會有些失真。

2.根據(jù)image重新繪制一張新的圖片出來:

- (UIImage *)scaleToSize:(UIImage *)img size:(CGSize)size{
    // 創(chuàng)建一個bitmap的context
    // 并把它設(shè)置成為當(dāng)前正在使用的context
    UIGraphicsBeginImageContext(size);
    // 繪制改變大小的圖片
    [img drawInRect:CGRectMake(0,0, size.width, size.height)];
    // 從當(dāng)前context中創(chuàng)建一個改變大小后的圖片
    UIImage* scaledImage =UIGraphicsGetImageFromCurrentImageContext();
    // 使當(dāng)前的context出堆棧
    UIGraphicsEndImageContext();
    //返回新的改變大小后的圖片
    return scaledImage;
}

根據(jù)大小來對圖片進(jìn)行壓縮,不會造成失真。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容