原文:
while you are using a 8 colour level ( 2^8 = 256 ) . You should convert your bitmap to the 5 colour level format(2^5 = 32 ).怎么解决? 好像这是这个项目最后一个关键性问题了,请大伙帮帮忙。
while you are using a 8 colour level ( 2^8 = 256 ) . You should convert your bitmap to the 5 colour level format(2^5 = 32 ).怎么解决? 好像这是这个项目最后一个关键性问题了,请大伙帮帮忙。
R5 = R8/8
G5 = G8/8
B5 = B8/8
谢谢你先,
你的猜想有道理,但做项目不能写没把握的代码吧:) 不过可以试试。
R5 = R8*5/8
G5 = G8*5/8
B5 = B8*5/8
这样Max(R5)=256*5/8 = 160 > 32 这样一来,似乎iicup(双杯献酒)更有道理些。
565格式,共有16位表示颜色,颜色种类2的16次方WORD RGB16(WORD r, WORD g, WORD b)
{
//见如下代码:R、G、B转555,将8位转5位,用的办法是去掉低三位。 if( Is555 )
//rrrrr|ggggg|bbbbb 0xf8 = 11111000b
return ((r&0xf8)<<7) | ((g&0xf8)<<2) | ((b&0xf8)>>3);
else
//rrrrr|gggggg|bbbbb 0xfc = 11111100
return ((r&0xf8)<<8) | ((g&0xfc)<<3) | ((b&0xf8)>>3);
}
应该是截取高5位!
应该是这样的:R5 = R8/8
G5 = G8/8
B5 = B8/8没有一种颜色主要取高五位就可以你可以用画笔程序试验一下,