Problem beim Skalieren mit StretchBlt
-
Ich habe ein Problem bei der Skalierung mit StretchBlt.
Zunächst der (etwas abgespeckte) Code aus OnPaint():HDC hdcSrc = CreateCompatibleDC(NULL); HDC hdcDest = hdcSrc; SelectObject(hdcSrc, hBitmap); StretchBlt( hdcDest, 0,0, bm.bmWidth/2, bm.bmHeight/2, hdcSrc, 0,0, bm.bmWidth, bm.bmHeight, SRCCOPY); DeleteDC(hdcSrc); m_cBitmapBild.SetBitmap(hBitmap);Gemäß einschlägiger Literatur sollen die Paramter 4 und 5 der StretchBlt-Methode die Breite und Höhe des Zielbitmaps angeben. War aber nix.
Das Bild wird unten mit SetBitmap(hBitmap) ausgegeben. Dabei zeigt sich, dass das ursprüngliche Bitmap vom verkleinerten Bitmap überlagert wird, die Größe wird aber beibehalten.
Ich möchte aber nur noch das verkleinerte Bitmap anzeigen.Hat jemand Erfahrung in dieser Sache ?
Um um jeden ernstgemeinten Hinweis bin ich zutiefst dankbar.
-
mhhh... hast du mal versucht was anderes als SRCCOPY zu nehmen?
-
Ich hab's schon mal zum laufen bekommen: http://www.codeproject.com/KB/miscctrl/wndimg.aspx
frag mich aber bitte jetzt nicht wie

-
Schaut ganz gut aus, was ich in www.codeproject.com gesehen habe.
Thänkx a lot !