Bitmap源碼分析以及圖片壓縮實現方案
Android中圖片是以Bitmap形式存在,Bitmap所佔內存大小的計算方式爲:圖片長度圖片寬度一個像素點佔用的字節數。爲了更好的理解Bitmap,我們先來看下BitmapFactory
Config | 佔用字節大小(byte) | 說明 |
---|---|---|
ALPHA_8 (1) | 1 | 代表8位Alpha位圖(沒有存儲任何的色彩信息,每一個像素只需要1byte存儲) |
RGB_565 (3) | 2 | 代表16位RGB位圖,不存儲Alpha值,只用2bytes存儲RGB信息,其中R爲5bit,G爲6bit,而B爲5bit |
ARGB_4444 (4) | 4 | 代表16位ARGB位圖,質量太差,Android不建議使用,建議使用ARGB_8888 |
ARGB_8888 (5) | 4 | 代表32位ARGB位圖,並且可以提供最好質量的圖片顯示,A,R,G.B各佔8bit |
RGBA_F16 (6) | 8 | Android 8.0 新增(更豐富的色彩表現HDR) |
HARDWARE (7) |