"Michael Kaufmann" <hallo(a)michael-kaufmann.ch> wrote:
+ if (bpp > 0 && compr == BI_BITFIELDS) + { + /* Windows ignores the input bitfields and overwrites them */ + + if (bpp == 16) + { + /* With these bitfields, the color data is the same as for BI_RGB */ + ((PDWORD)info->bmiColors)[0] = 0x7c00; + ((PDWORD)info->bmiColors)[1] = 0x03e0; + ((PDWORD)info->bmiColors)[2] = 0x001f; + } + else if (bpp == 32) + { + /* With these bitfields, the color data is the same as for BI_RGB */ + ((PDWORD)info->bmiColors)[0] = 0xff0000; + ((PDWORD)info->bmiColors)[1] = 0x00ff00; + ((PDWORD)info->bmiColors)[2] = 0x0000ff; + }
What happens in 15 and 24 bpp cases? -- Dmitry.