4

我知道 12 位 RGB 调色板格式,每种颜色 R、G、B 有 4 位。但是原始数据的结构如何?

1.) 每种颜色是否都有一个与之对应的字节,该字节又具有 4 个填充位和 4 个用于颜色数据的数据位

或者

2.) 它是一种打包格式,即 Byte-1= (padding bits + 4-Rbits) Byte-2 = (4-Gbits+4Bits)

包装是怎么做的?

谢谢你。

-广告

4

4 回答 4

1

在哪里?

在内存中,它可以是任何东西——很可能它可以保存在一个 3 字符数组或结构中......

在磁盘中,由于空间非常重要,它可能会以更紧凑的格式保存:3 个字节代表两个相邻像素:[RG][BR][GB],并在写入/读取时打包/解包。

不过,这一切都取决于您的格式/平台的规格。

于 2009-05-07T05:13:04.473 回答
0

我知道 12 位 RGB 调色板格式,每种颜色 R、G、B 有 4 位。

你确定这是调色板格式吗?

通常,调色板格式由两个不同的部分组成:调色板本身和图像。调色板是颜色值的查找表,其格式是特定于实现的。然后图像是托盘的索引值列表。

调色板格式通常用于节省内存,或者有时用于制作霓虹灯风格的动画(如 Windows95 加载屏幕底部有一条蓝色条:图像被写入屏幕一次,然后调色板中的一些颜色被每隔几毫秒旋转一次)。

于 2009-05-07T09:37:10.907 回答
0

在 Amiga 上,系统非常简单:

$0fff = 白色...十进制,即 0(未使用)、15(最大红色)、15(最大绿色)、15(最大蓝色)。

$0a04 = 带有一丝蓝色的红色意味着它是红紫色,混合了强度为 10 的红色和强度为 4 的蓝色,而根本不添加绿色。

RGB 都是 8 位数字,$FFF = 4095(+ 黑色)每种颜色都是 4 位。三乘以 4 位 = 12 位,因此 12 位颜色范围。

使用 12 位 RGB 链接到 Wiki 列表系统上的 12 位 RGB

于 2014-01-09T15:12:51.550 回答
0

在 CD+G 上,每个 12 位调色板条目使用两个连续字节的 6 个 lsb 存储;没有浪费空间,因为高两位用于存储时序信息。我认为 Amiga 只是在一个 16 位字中使用了四个 nybbles 中的三个。我不确定您可能会想到哪些其他格式。

于 2010-09-04T23:43:12.607 回答