android bitmap压缩几种色彩详解
Android 详解 几种 压缩 bitmap 色彩
2023-09-14 08:58:19 时间
android中的大图片一般都要经过压缩才显示,不然容易发生oom,一般我们压缩的时候都只关注其尺寸方面的大小,其实除了尺寸之外,影响一个图片占用空间的还有其色彩细节。
打开Android.graphics.Bitmap类里有一个内部类Bitmap.Config类,在Bitmap类里createBitmap(intwidth, int height, Bitmap.Config config)方法里会用到,打开个这个类一看
枚举变量
public static final Bitmap.Config ALPHA_8
public static final Bitmap.Config ARGB_4444
public static final Bitmap.Config ARGB_8888
public static final Bitmap.Config RGB_565
一看,有点蒙了,ALPHA_8, ARGB_4444,ARGB_8888,RGB_565 到底是什么呢?
其实这都是色彩的存储方法:我们知道ARGB指的是一种色彩模式,里面A代表Alpha,R表示red,G表示green,B表示blue,其实所有的可见色都是右红绿蓝组成的,所以红绿蓝又称为三原色,每个原色都存储着所表示颜色的信息值
说白了就ALPHA_8就是Alpha由8位组成
ARGB_4444就是由4个4位组成即16位,
ARGB_8888就是由4个8位组成即32位,
RGB_565就是R为5位,G为6位,B为5位共16位
由此可见:
ALPHA_8 代表8位Alpha位图
ARGB_4444 代表16位ARGB位图
ARGB_8888 代表32位ARGB位图
RGB_565 代表8位RGB位图
位图位数越高代表其可以存储的颜色信息越多,当然图像也就越逼真。
例子: Bitmap bg = Bitmap.createBitmap(width, height, Config.ARGB_8888);
Android内存优化-Bitmap内存优化 在日常开发中,我们不免会使用到Bitmap,而bitmap确实实在在的是内存使用的 “大户”,如何更好的使用 bitmap,减少其对 App内存的使用,是我们开发中不可回避的问题。
Android中Bitmap压缩的几种方法的解读 很久之前研究微信的分享sdk的时候,在缩略图这遇到了一点问题,就做了个笔记,最近才翻出来。 微信分享的缩略图要求是不大于32k,这就需要对图片进行压缩。试了几种方法,一一道来。
枚举变量
public static final Bitmap.Config ALPHA_8
public static final Bitmap.Config ARGB_4444
public static final Bitmap.Config ARGB_8888
public static final Bitmap.Config RGB_565
一看,有点蒙了,ALPHA_8, ARGB_4444,ARGB_8888,RGB_565 到底是什么呢?
其实这都是色彩的存储方法:我们知道ARGB指的是一种色彩模式,里面A代表Alpha,R表示red,G表示green,B表示blue,其实所有的可见色都是右红绿蓝组成的,所以红绿蓝又称为三原色,每个原色都存储着所表示颜色的信息值
说白了就ALPHA_8就是Alpha由8位组成
ARGB_4444就是由4个4位组成即16位,
ARGB_8888就是由4个8位组成即32位,
RGB_565就是R为5位,G为6位,B为5位共16位
由此可见:
ALPHA_8 代表8位Alpha位图
ARGB_4444 代表16位ARGB位图
ARGB_8888 代表32位ARGB位图
RGB_565 代表8位RGB位图
位图位数越高代表其可以存储的颜色信息越多,当然图像也就越逼真。
例子: Bitmap bg = Bitmap.createBitmap(width, height, Config.ARGB_8888);
Android内存优化-Bitmap内存优化 在日常开发中,我们不免会使用到Bitmap,而bitmap确实实在在的是内存使用的 “大户”,如何更好的使用 bitmap,减少其对 App内存的使用,是我们开发中不可回避的问题。
Android中Bitmap压缩的几种方法的解读 很久之前研究微信的分享sdk的时候,在缩略图这遇到了一点问题,就做了个笔记,最近才翻出来。 微信分享的缩略图要求是不大于32k,这就需要对图片进行压缩。试了几种方法,一一道来。
相关文章
- Android教程-android studio 制作.9 图片
- android文件混淆详解
- 实用正则表达式扫描android SDcard的文件
- 导入旧版本Android项目时的“Unable to resolve target ‘android
- Android API之android.content.BroadcastReceiver
- Android API之android.widget.Filterable
- Android特效专辑(一)——水波纹过渡特效(首页)
- android中Intent传值与Bundle传值的区别详解
- Android开发学习---使用Intelij idea 13.1 进行android 开发
- Android WebView详解
- android 使用Vysor投影到电脑
- android 多个shortCut快捷方式实现以及对58同城快捷方式的实现思路的研究
- Android之SharedPreferences详解
- Android--数据库数据显示至屏幕
- 【VLC-Android】Mac下编译vlc-android
- 【Android】android studio ndk使用例子
- 学习Android 的网站
- 【CSDN首发】2021最新《Android Framework开发详解》腾讯技术团队出品,限时分享
- android开发分享Android中外接键盘的检测的实现
- android 11.0 12.0去掉recovery模式UI页面的选项
- Android 使用Vector 画图详解
- Android 动画 帧动画 使用详解
- Android应用程序签名详解
- Android SystemProperties系统属性详解
- Android入门第八篇之GridView(九宫图)
- Android培训班(34)
- Android Settings 去除振动功能
- Android的java的报错提示:Could not find com.android.tools.build:gradle:4.2.2.
- Android JNI使用方法,JNI机制详解