Schierigkeiten mit StretchBlt
-
Hallo Leute,
ich kämpfe mal wieder mit der GDI und bin bald soweit ein Hologram mit Bill Gates zu entwickeln, um einfach nur hin und wieder mal rein hauen zu können
. Nennt sich dann Stressbewältigung, aber wem soll ich das in diesem Forum schon sagen, ihr wisst was ich meine.
Zu meinem Prob:
So schaut meine Variante der Bittiefen- und Farbreduktion von 32 und 16 Bit nach 8 Bit images aus. Haut auch alles mit einem BitBlt hin, nur wenn ich den StretchBlt nutzen will(wollte noch das Dithering von StretchBlt nutzen) bekomme ich glat 0 scanlines copied zurück.
CImage image, tmpimage; int colors = 256; // in image bereits 32 bit *.bmp geladen // logrgbquad mit 256 colors palette initialisiert tmpimage.Create(image.GetWidth(), image.GetHeight(), 8, 0); tmpimage.SetColorTable(0, colors, logrgbquad); x = StretchDIBits(tmpimage.GetDC(), 0, 0, image.GetWidth(), image.GetHeight(), 0, 0, image.GetWidth(), image.GetHeight(), image.GetBits(), bmpinfo, DIB_RGB_COLORS, SRCCOPY);
Weis jemand RAT wieso das nicht geht?
Thx codeman
-
Ok habs gefunden
Hatte versehentlich StretchDIBits verwandt stat StretchBlt, der macht das tatsächlich und das auch noch richtig geil.