Veröffentlicht 13. März 200520 j Hallo leute ich habe ein Handle auf ein Bitmap (HBITMAP). ist es möglich dieses Bild auf eine Bestimte größe zu ziehen? sagen wir ich brauch das bild in der größe von 100x100 Pixeln! hab zwar schon in google gesucht, aber ich weiß nicht wirklich wie sowas aussehen könnte (vermutlich hab ich deshalb nichts gefunden) kann mir jemand helfen? wär toll Danke SwordMaster
13. März 200520 j Willst du es mit einer anderen größe Speichern oder darstellen? guck dir mal StretchBlt() an.
13. März 200520 j Autor am besten wär wenn ich ein neues HBITMAP bekomme was auf das "Neue verkleinerte Bitmap" verweist... ich möchte das bild dann in einem CStatic anzeigen <mit m_bild.SetBitmap(...)> an StretchBlt hätte ich auch schon gedacht, aber dazu brauch ich ja ein HDC und kein HBITMAP. oder kann ich ein HBITMAP auf ein HDC umwandeln?.
13. März 200520 j Ich hab hier einen kleinen Ausschnitt aus einem Programm von mir, das sollte das Vorgehen verdeutlichen: HDC hDest,hSrc; HBITMAP hBitmap; BITMAP Info; //Bitmap laden //hBitmap = (HBITMAP)LoadImage(0,"c:\\test.bmp",IMAGE_BITMAP,0,0,LR_LOADFROMFILE); //if (hBitmap == NULL) //{ //Wenn Bitmap nicht vorhanden Standartresource nehmen hBitmap = LoadBitmap(hInst,MAKEINTRESOURCE(IDB_BITMAP1)); //} //Infos über das Bitmap holen GetObject(hBitmap,sizeof(Info),&Info); hDest = GetDC(hMainWindow); //Device Context des Fensters holen hSrc = CreateCompatibleDC(hDest); //Compatiblen DC zum Fensters erstellen SelectObject(hSrc,hBitmap); //Bitmap in Compatiblen DC laden //Bitmap vom Compatiblen DC in den DC des Fensters kopieren //TransparentBlt(hDest,10,170,200,80,hSrc,0,0,Info.bmWidth,Info.bmHeight,RGB(195,196,195)); BitBlt(hDest,30,187,Info.bmWidth,Info.bmHeight,hSrc,0,0,SRCCOPY); //Variablen und Handles wieder freigeben ReleaseDC(hMainWindow,hDest); DeleteDC(hSrc); DeleteObject(hBitmap); [/PHP] Statt BitBlt kannst du ja einfach StretchBlt nehmen.
14. März 200520 j Autor Das sieht mir sehr vielversprechend aus, ich werd schaun dass ich es heute noch testen kann! vielen dank für den Beispielcode!!
Erstelle ein Konto oder melde dich an, um einen Kommentar zu schreiben.