我对一张象素格式为PixelFormat.Format8bppIndexed的图片用SetPixel()方法时
出现
:具有索引像素格式的图像不支持 SetPixel。 
的问题。
用PixelFormat.Format24bppRgb格式的图片不会出现问题。请问这个问题怎么解决呀?谢谢

解决方案 »

  1.   

    呵开PHOTOSHOP里面的取颜色工具,
    也不支持索引像素格式的,
    把它调整为RGB的就可以取到.
      

  2.   

    因为Format8bppIndexed格式是索引格式,也就是说图像的原始数据不是真正象素的值,而是索引值。要变成象素值还要查询索引表。这样的数据图像不能通过SetPixel设置,因为SetPixel的参数是真正的COLOR。
      

  3.   

    BMP里有调色板,会自己设定索引,比如1代表红色,2代表黑色,都是可能的。
    你把这种转换为256色再操作
      

  4.   

    BMP格式你去网上搜索一下,把调色板那段偏移分析一下,然后对颜色数组逐个转换就好了
      

  5.   

    为什么要使用SetPixel?那样效率很低的。