首页 > 代码库 > 计算机的颜色储存格式
计算机的颜色储存格式
转:http://blog.csdn.net/skyflying2012/article/details/8004078
常见的颜色有 8位16位 24位32位色,其中24位及以上称为真彩,是PC上最常用的颜色,其他基本用于嵌入式系统或一些工控领域,详情可查阅一下表格:
Bit-深度 色彩数
1 2 (monochrome)
2 4 (CGA)
4 16 (EGA)
8 256 (VGA)
16 65,536 (High Color, XGA)
24 16,777,216 (True Color/真彩色, SVGA)
32 16,777,216 (True Color + Alpha Channel/控制透明度,-游戏特效)
关于256色,早先的一些较为形象的解释是理解为256个油漆桶/256色调色板,分配给它们编号/索引号。“叫到哪个颜色”哪个颜色就出来填充像素。因为如16色、256色的色彩数有限所以这么解释很简单易理解。然而电脑操作过程中必须经过数码编码,那么实际上256种颜色对应256个数码(二进制数值),也就是2^2 * 2^3 * 2^3 = 2^8 = 256。256色模式下电脑没有必要去按24bit处理,在当时DOS时代,处理8bit色彩比24bit要容易多了。
当然256色中的任意一种颜色都可以用24bit表示,甚至可以用32bit,64bit表示。但是不管如何,24bit模式就意味着 17.7million种颜色。256色模式就意味着256种颜色,或者理解为24bit的17.7million种颜色中的256个颜色。
256色模式: 共8 bits (B: 2 bits; G: 3 bits; R: 3 bits)。
High color:共16 bits (B: 5 bits, G: 6 bits, R: 5 bits)。
True color:一般24bit就是8bit/通道,真彩色。
windows下的32位是R、G、B三个通道各占8位共24位,加上明度通道8位,所以是32位,24位也就是R、G、B三个通道各占6位共18位,加上明度通道6位,所以是24位。
32位色中的24位用来保存颜色信息(R8G8B8),另外的8位用来保存ALPHA信息,ALPHA属性就是透明度。
24位色也有几种表示,可以是R5G6B5,也可以是R5G5B5,等等
16位色块可能会比较少,32比较好点
在颜色数方面,当然很明显,是2的16次方、24次方和32次方的差别。从人眼的感觉来说,16位色能基本满足显示需要,粗看起来和24位色、32位色差不多,仔细点研究的话,会发现在大面积的渐变色中16位色显示会出现隐约的分隔线。实际应用中,最常用的是24位色,比如网页和其他地方表示颜色的 “#80FF2E”之类的字符串,用答CDSee看图片也可以看到大部分图片的色深是24位。至于32位色,那是在24位基础上加出来的,据说是加了8位透明色,实际和24位色没多大差别,至少我们的眼睛是分辨不出来的。
32位色是指我们图像的rgb各8位,然后再加上z-buffer 8位凑成32位!其中真彩24位就足够了!然后后面的8位是在3d的显示中的!
《什么是24位BMP图片》
1 2 (monochrome)
2 4 (CGA)
4 16 (EGA)
8 256 (VGA)
16 65,536 (High Color, XGA)
24 16,777,216 (True Color/真彩色, SVGA)
32 16,777,216 (True Color + Alpha Channel/控制透明度,-游戏特效)
关于256色,早先的一些较为形象的解释是理解为256个油漆桶/256色调色板,分配给它们编号/索引号。“叫到哪个颜色”哪个颜色就出来填充像素。因为如16色、256色的色彩数有限所以这么解释很简单易理解。然而电脑操作过程中必须经过数码编码,那么实际上256种颜色对应256个数码(二进制数值),也就是2^2 * 2^3 * 2^3 = 2^8 = 256。256色模式下电脑没有必要去按24bit处理,在当时DOS时代,处理8bit色彩比24bit要容易多了。
当然256色中的任意一种颜色都可以用24bit表示,甚至可以用32bit,64bit表示。但是不管如何,24bit模式就意味着 17.7million种颜色。256色模式就意味着256种颜色,或者理解为24bit的17.7million种颜色中的256个颜色。
256色模式: 共8 bits (B: 2 bits; G: 3 bits; R: 3 bits)。
High color:共16 bits (B: 5 bits, G: 6 bits, R: 5 bits)。
True color:一般24bit就是8bit/通道,真彩色。
windows下的32位是R、G、B三个通道各占8位共24位,加上明度通道8位,所以是32位,24位也就是R、G、B三个通道各占6位共18位,加上明度通道6位,所以是24位。
32位色中的24位用来保存颜色信息(R8G8B8),另外的8位用来保存ALPHA信息,ALPHA属性就是透明度。
24位色也有几种表示,可以是R5G6B5,也可以是R5G5B5,等等
16位色块可能会比较少,32比较好点
在颜色数方面,当然很明显,是2的16次方、24次方和32次方的差别。从人眼的感觉来说,16位色能基本满足显示需要,粗看起来和24位色、32位色差不多,仔细点研究的话,会发现在大面积的渐变色中16位色显示会出现隐约的分隔线。实际应用中,最常用的是24位色,比如网页和其他地方表示颜色的 “#80FF2E”之类的字符串,用答CDSee看图片也可以看到大部分图片的色深是24位。至于32位色,那是在24位基础上加出来的,据说是加了8位透明色,实际和24位色没多大差别,至少我们的眼睛是分辨不出来的。
32位色是指我们图像的rgb各8位,然后再加上z-buffer 8位凑成32位!其中真彩24位就足够了!然后后面的8位是在3d的显示中的!
《什么是24位BMP图片》
24是指图片颜色的位数,只所以图片要分颜色的位数,是因为既然图片以“像素”形式存贮着,就要记录下来第个“像素”的颜色值,这样才能在打开图片时看到存贮的图片。
记录每一个像素的颜色值占用的二进制位数,就是BMP图片的位数,记录颜色值时又有不同的方法,比如用RGB值,也就是记录下红(RED)、绿(GREEN)、蓝(BLUE)的颜色值进行混合,还有XRGB、ARGB等等。
比如16位颜色值,可心这样分:X1位,R5位,G5位,B5位;R5位,G6位,B5位或者是X、R、G、B均4位等等;
24位颜色值称为“真彩色”,它有着统一的颜色分配:R8位,G8位,B8位;
32位颜色值一般这样分配:X8位,R8位,G8位,B8位或A8位,R8位,G8位,B8位。
当然还有更多的不同颜色值的图片,比如1位的,4位的,8位的等等,每种颜色值所用的位数越多,则表现这种颜色深度的精度越高,所有图像也越逼真,当然图片的容量也就越大。
在实用美术中,常有"远看色彩近看花,先看颜色后看花,七分颜色三分花"的说法。
这也就说明,在任何设计中,色彩对视觉的刺激起到第一信息传达的作用。因此,对色彩的基础知识的良好掌控,在网页设计中才能做到游刃有余。
为了使下面的网页配色分析更易于理解,我们先来了解色彩的RGB模式和HSB模式。
RGB
RGB是表示红色绿色蓝色又称为三原色光,英文为R(Red)、G(Green)、B(Blue),在电脑中,RGB的所谓"多少"就是指亮度,并使用整数来表示。
通常情况下,RGB各有256级亮度,用数字表示为从0、1、2至255。虽然数字最高是255,但0也是数值之一,因此共256级。按照计算,256 级的RGB色彩总共能组合出约1678万种色彩,即256×256×256=16777216。通常也被简称为1600万色或千万色。也称为24位色(2 的24次方)。
对于单独的R或G或B而言,当数值为0时,代表这种颜色不发光;如果为255,则该颜色为最高亮度。因此当RGB三种色光都发到最强的亮度,纯白的RGB值就为255,255,255。屏幕上黑的RGB值是0,0,0。R,意味着只有红色存在,且亮度最强,G和B都不发光。因此最红色的数值是255,0,0。同理,最绿色就是0,255,0;而最蓝色就是0,0,255。黄色较特殊,是由红色加绿色而得就是255,255,0
24bit 和 32bit 是一样的,由于24bit不能在显存中对齐,所以不是所有的显卡都能支持。反而 32bit 因为可对齐,大多数的显卡都支持(当然显存要足够大)。32bit实际上也是24bit,一般都在 MSB 上填充 8bit 的 0 或 alpha (没有实际效果)。
计算机的颜色储存格式
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。