颜色模式中8位,16位,24位,32位色彩是什么意思?会有什么区别?计算机颜色格式( 8位 16位 24位 32位色)【转】

简介:

转自:http://www.cnblogs.com/1175429393wljblog/p/5404626.html

颜色模式中8位,16位,24位,32位色彩是什么意思?会有什么区别简单地说这里说的位数和windows系统显示器设置中的颜色位数是一样的。表示的是能够显示出来的颜色的多少。

8位的意思是说,能够显示出来的颜色的数量有8位数。16、24都是一样的。
24位的颜色数量已经很多了,叫做“真彩色”,其实32位和24位颜色数量是一样多的。32位多出来的8位数是用来表示透明度信息的,所以更加真实。 如果一有一张真彩色的照片,放到一个只有8位的显示器上的话,显示出来的效果就会很差。所以当需要的时候你就需要在低位颜色的模式下编辑,让颜色更好。更详细的如下:
常见的颜色有 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图片》   

    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 (没有实际效果)。








相关文章
|
存储 JavaScript 前端开发
Web Audio API 第2章 完美的播放时机控制
Web Audio API 第2章 完美的播放时机控制
|
11月前
|
UED 开发者
鸿蒙next版开发:ArkTS组件通用属性(禁用控制)
在HarmonyOS 5.0中,ArkTS引入了禁用控制属性,允许开发者控制组件的可用状态,提升用户界面的交互性和响应性。本文详细解读了ArkTS中组件的禁用控制属性,并提供了示例代码,展示了如何使用`disabled`属性来禁用按钮等可交互组件,从而防止用户误操作、引导用户流程和提升用户体验。
354 4
|
11月前
|
设计模式 数据安全/隐私保护
探索责任链模式:在项目中的应用与实践
在软件设计模式中,责任链模式(Chain of Responsibility)是一种对象行为型模式,它允许一个请求沿着链式结构的多个对象传递,直到有一个对象处理它为止。这种模式在实际项目中有着广泛的应用,尤其是在处理复杂的业务逻辑和解耦系统中。本文将分享责任链模式的基本概念、应用场景以及在项目中的实践案例。
275 5
|
开发工具 C语言 内存技术
ZYNQ_SDK HelloWorld实验
ZYNQ_SDK HelloWorld实验
|
存储 传感器 Java
格雷码(Gray Code)
格雷码(Gray Code)是一种二进制编码方式,它使用两种不同状态的信号(通常为 0 和 1)来表示二进制位。与普通的二进制编码不同,格雷码相邻的两个二进制位之间只相差一个比特。例如,对于 4 位二进制数,格雷码可以是 0000、0001、0011、0100、0101、0110、1000、1001、1010、1011、1100、1101、1110 和 1111。
2951 1
|
运维 负载均衡 Devops
DevOps实践:使用Ansible进行自动化部署
【9月更文挑战第19天】在软件开发的快节奏世界中,DevOps已成为提高效率和促进协作的关键。本文将通过一个实际案例,展示如何使用Ansible简化自动化部署过程,旨在帮助读者理解DevOps的核心价值并掌握Ansible的基本使用。从概念到实践,我们将一起探索如何通过编写简单的Playbook来自动化服务器配置和应用部署,最终实现快速、可靠的软件发布。
|
XML 安全 API
REST 和 SOAP API 有什么区别?
【8月更文挑战第31天】
824 0
|
算法 量子技术 C#
量子编程入门:从基础到实践
【5月更文挑战第26天】本文引导读者入门量子编程,从量子比特、量子门和量子算法的基础概念,到量子编程语言和量子模拟器的工具介绍,再到编写、运行和调试量子程序的实践步骤。通过学习和实践,开发者可以逐渐掌握量子编程,为未来的量子计算应用打下基础。随着量子计算技术的发展,量子编程将在更多领域展现其潜力。
|
JavaScript 前端开发 Java
《手把手教你》系列技巧篇(二十四)-java+ selenium自动化测试-三大延时等待(详细教程)
【4月更文挑战第16天】本文介绍了Selenium的三种等待方式:硬性等待、隐式等待和显式等待。硬性等待是指无论页面是否加载完成,都会等待指定时间后再执行下一步;隐式等待是在整个会话中设置一个全局等待时间,如果元素在规定时间内出现则执行,否则继续等待;显式等待是更加灵活的等待方式,可以指定特定条件,如元素可见、可点击等,只有当条件满足时才会执行下一步。
292 7
egret微信小游戏自定义加载(loading)界面
egret微信小游戏自定义加载(loading)界面
egret微信小游戏自定义加载(loading)界面