#define BGR2RGB(x) ((((x) & 0x000000ff) << 16) | (((x) & 0x00ff0000) >> 16) | ((x) & 0x0000ff00)) ///3个颜色按位或是什么意思???x为一个获取的颜色。这个是在读取mif文件的时候。对文件里的钢笔的颜色进行的处理。不知道为什么。这个宏表示的是什么意思?????
调试欢乐多
把原本BGR格式存储的颜色值转换为RGB格式
R: Red 0~255
G: Green 0~255
B: Blue 0~255
由于每个分色只有8位,它们可以用1个32bit的整形来表示。BGR格式中
B(lue)在内存中的占用32bit整形的 16~23 bit
G(reen) 8~15 bit
R(ed) 0~7 bitRGB格式中
R(ed) 在内存中的占用32bit整形的 16~23 bit
G(reen) 8~15 bit
B(lue) 0~7 bit这个宏实际上是把这个表示颜色的整形数的 0~7bit与16~23bit的值互换。