Bitmap android.graphics.Bitmap.createBitmap(int width, int height, Config config)张第三个参数的含义

来源:互联网 发布:sql 非 编辑:程序博客网 时间:2024/05/22 07:41

int width -->宽

int height -->高

Config config -->

android.graphics.Bitmap.Config是一个枚举类型,里面定义了位图的四种格式.

       ALPHA_8:数字为8,图形参数应该由一个字节来表示,应该是一种8位的位图

       ARGB_4444:4+4+4+4=16,图形的参数应该由两个字节来表示,应该是一种16位的位图.

       ARGB_8888:8+8+8+8=32,图形的参数应该由四个字节来表示,应该是一种32位的位图.

       RGB_565:5+6+5=16,图形的参数应该由两个字节来表示,应该是一种16位的位图.




打开Android.graphics.Bitmap类里有一个内部类Bitmap.Config类,

在Bitmap类里createBitmap(int width, 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位图

位图位数越高代表其可以存储的颜色信息越多,当然图像也就越逼真

0 0
原创粉丝点击