一般的rgb,是24位,所以真彩视频显示器理论上可以显示2 的24次方的颜色。我发现有的图片居然是32*32位的。 那么这种图片的r,g,b又各为多少位?还有有的同一台机子既可以显示32*32 的,又可以显示24*24的, 这是怎么回事?代码不会出问题吗?

解决方案 »

  1.   

    现在的显卡一般都设置成32bpp模式,rgb各8bit,还有8bit的alpha通道不管32bpp的位图和24bpp的位图,显示的时候由系统负责转换成32bpp
      

  2.   

    最后一个问题:为什么一张好好的图片,由于createcompatiabelbitmap的参数写成了内存dc,结果导致图片变成黑白的。这个黑白         也是与我的这个帖子里讨论的显卡 色彩模式 相关嘛?
      

  3.   

    如果createcompatiabelbitmap的参数错写成了内存dc生成的DDB位图,将视memdc当前选入的bitmap格式而定
    memdc除了选入彩色的兼容位图外,还允许选入单色位图,而且1X1的单色位图是memdc的初始状态所以如果参数错写成了内存dc,而且这时memdc没有选入彩色位图,那createcompatiabelbitmap(memdc)生成的位图就会是单色的