Android 圖片壓縮方法分析與學習
bitmap compress 是官方給出的圖片質量壓縮,通過試驗學習了這個壓縮的特性如下:
- 它是圖片質量壓縮,不會改變圖片的解析度
-
bitmap.compress(Bitmap.CompressFormat.JPEG, option, bos);
三個引數說明,1.圖片壓縮後的格式 2.圖片壓縮比例 3.壓縮後得到的資料
- 這個方法會使圖片壓縮但是,由於是質量壓縮,bitmap不會變小,也就是記憶體依然大,壓縮的資料確實變小使用的時候得注意了記憶體溢位問題
測試方法如下:
System.out.println("bitmap=="+bitmap.getByteCount()); ByteArrayOutputStream bos = new ByteArrayOutputStream(); //通過這裡改變壓縮型別,其有不同的結果 int option = 100; while (option > 0) { bitmap.compress(Bitmap.CompressFormat.JPEG, option, bos); System.out.println("bos=====" + bos.size()); option-=10; bos.reset(); } System.out.println("bitmap==" + bitmap.getByteCount()); bitmap.recycle(); ByteArrayInputStream bis = new ByteArrayInputStream(bos.toByteArray()); System.out.println("bis====="+bis.available()); bitmap = BitmapFactory.decodeStream(bis); System.out.println("bitmap=="+bitmap.getByteCount()); imageView.setImageBitmap(bitmap);
如果確實要節約記憶體
就是用如下方法:
ByteArrayOutputStream out = new ByteArrayOutputStream(); image.compress(Bitmap.CompressFormat.JPEG, 100, out); BitmapFactory.Options newOpts = new BitmapFactory.Options(); int be = 2;//壓縮比例,可以自己通過解析度去計算需要的比例值 newOpts.inSampleSize = be; ByteArrayInputStream isBm = new ByteArrayInputStream(out.toByteArray()); Bitmap bitmap = BitmapFactory.decodeStream(isBm, null , null );
相關文章
- 圖片壓縮知識梳理(0) 圖片壓縮學習計劃
- Android 中圖片壓縮分析(上)Android
- iOS 圖片壓縮方法iOS
- android下圖片壓縮Android
- 深度學習之圖片壓縮技術深度學習
- Android壓縮圖片後再上傳圖片Android
- Android 載入大圖片,不壓縮圖片Android
- 前端圖片壓縮 - H5&Uni-App圖片壓縮前端H5APP
- ??圖片壓縮CanvasCanvas
- IOS圖片壓縮iOS
- canvas 壓縮圖片Canvas
- android圖片壓縮不失真實戰Android
- 【學習圖片】13.自動壓縮和編碼
- Nginx網路壓縮 CSS壓縮 圖片壓縮 JSON壓縮NginxCSSJSON
- excel檔案裡的圖片怎麼壓縮?excel檔案裡圖片的壓縮方法Excel
- Glide 原始碼分析(一):圖片壓縮IDE原始碼
- Android-圖片壓縮(二)-純乾貨Android
- android 比較靠譜的圖片壓縮Android
- 仿寫一個android圖片壓縮工具Android
- 前端圖片壓縮方案前端
- Android 端 WebP 圖片壓縮與傳輸的一點探索AndroidWeb
- 深度學習模型壓縮方法概述深度學習模型
- JS中圖片壓縮的一般方法JS
- 前端的圖片壓縮image-compressor(可在圖片上傳前實現圖片壓縮)前端
- 淺談移動端圖片壓縮(iOS & Android)iOSAndroid
- 簡單實用的android 圖片的壓縮Android
- Android如何壓縮圖片上傳服務端Android服務端
- Android-壓縮大圖到容量超小的圖片Android
- Android 高清載入巨圖方案 拒絕壓縮圖片Android
- SmallImage for Mac(圖片壓縮工具)Mac
- js上傳圖片壓縮JS
- js圖片壓縮推薦JS
- JNI實現圖片壓縮
- java後臺壓縮圖片Java
- 【前端】壓縮圖片以及圖片相關概念前端
- vue 上傳圖片進行壓縮圖片Vue
- 圖片壓縮怎樣操作?分享幾種實用的批次圖片壓縮技巧
- png格式如何壓縮,圖片壓縮工具哪個好