如何獲取UIImage大小,以及轉(zhuǎn)換NSData和壓縮UIImage的方法

大家可能在項目過程中有時候會遇到一個這樣的問題,就是需求所因,必須控制圖片的大小才能上傳到后臺。


UIImage的讀取圖片數(shù)據(jù)的方法:(一共兩種)

1.UIImageJPEGRepresentation這個是讀取UIImage的JPEG格式的數(shù)據(jù)

2.UIImagePNGRepresentation.這個是讀取UIImage的PNG格式的數(shù)據(jù)

第一種方法讀取圖片需要兩個參數(shù),UIImage和壓縮系數(shù),而第二種方法只需要一個參數(shù)UIImage即可.

但是通過測試得出結(jié)論,雖然第二種方法只需要一個參數(shù),但是返回的圖片比第一種要大的多.

如果對圖片的清晰度要求不高,還可以通過設置 UIImageJPEGRepresentation的第二個參數(shù),大幅度降低圖片的大小.假如通過調(diào)用UIImageJPEGRepresentation(UIImage* image, 1.0)讀取數(shù)據(jù)時,返回的數(shù)據(jù)大小為279KB,但更改壓縮系數(shù)后,通過調(diào)用UIImageJPEGRepresentation(UIImage* image, 0.5)讀取數(shù)據(jù)時,返回的數(shù)據(jù)大小只有60KB,大大壓縮了圖片的大小 ,而且從視角角度看,圖片的質(zhì)量并沒有明顯的降低.因此,在讀取圖片數(shù)據(jù)內(nèi)容時,建議優(yōu)先使用UIImageJPEGRepresentation,并可根據(jù)自己的實際使用場景,設置壓縮系數(shù),進一步降低圖片的大小.

最后編輯于
?著作權歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內(nèi)容