导航
  • 主页
  • VC综合技术
  • MFC新技术
  • 互联网技术
  • .NET 技术
  • VC/MFC界面
  • VC/MFC 进程
  • VC/MFC 数据库
  • VC++技术资源

高手给我讲讲什么是调色板

GameWeaverDummy 2005-07-22 10:27:30
最好讲讲怎么用.
谢谢
...全文
77 点赞 收藏 7
写回复
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
简单说,是种 Windows SDK 定义的结构体,保存了颜色的分量值来表示颜色。
回复
WuOu 2005-07-22
现在编程通常情况下不需要考虑这个东东了吧.
回复
DRACULAX05 2005-07-22
不是高手,不过也来参活参活

调色板顾名思义和画家手中的调色板一样,通常象素的颜色是直接用RGB值表示的,就好象画画时用颜料直接画到画布上,但当颜料太少,不足以表示所有的颜色怎么办呢?这时就可以利用调色板,在电脑上这意味着为象素分配的位数不足以表示目标图中的所有颜色,比如只有8位的象素确要表达24位的图象,这时就需要从这24位颜色中(2的24次方)中选取至多256种(2的8次方)中颜色放到所谓的调色板中,而象素那8位就表示为它的颜色在调色板中的索引(index),象素的着色过程变为:
调色板索引-》真正的颜色,调色板的产生是由于早期的硬件性能不足但又需要表示尽可能多的颜色。现在一般不用,只是在一些特殊要求的图象如256色图象以及调色板动画中使用

Windows系统有一个系统默认的调色板,各个软件可以产生自己的调色板,对于全屏游戏来说,他会独占系统调色板,游戏过程中其他任何软件不允许更改这个调色板,这就是所谓的独占模式,实际上,现在的调色板已经失去他原来的意义,变成了一个保存若干颜色值的数组,而颜色值的选取则是由于其他目的而确定的
回复
goodboyws 2005-07-22
简单的说,调色板就是包括你位图里用到的所有颜色的颜色表,为了节省储存空间,24位以下的位图实际上是用这个颜色表的索引号保存的
回复
huqian2003 2005-07-22
http://www.impcas.ac.cn/usr/yuanyj/vcpptutorial/chap11_1.htm
回复
Ariesman 2005-07-22
RGB24
能标识出所有的色彩,R(8位)G(8位)B(8位)
所以它不用调色板

RGB8 即256色又怎样呢?
如何获得想要的颜色呢?这种情况下该图只能有256种颜色,用0-255标识,即0x00-0xFF
那么调色板的概念就出来了,将0x00-0xFF与具体颜色挂钩,从而使没一个象素根据自己的颜色代码(这里仅1位,所以只有0x00-0xFF)到调色板中查找出具体的颜色显示出来.

回复
GameWeaverDummy 2005-07-22
up
回复
发动态
发帖子
VC/MFC
创建于2007-09-28

1.5w+

社区成员

VC/MFC相关问题讨论
申请成为版主
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……