Ich habe eine Bitmap mit CreateDIBSection erstellt und angegeben .biWidth = 100; .biHeight = 100 wie dieser Pseudo-Code:Bitmap-Größe ändern, ohne eine neue Bitmap zu erstellen
pBitmapInfo->bmiHeader.biWidth = 100;
pBitmapInfo->bmiHeader.biHeight = 100;
....
CreateDIBSection(DibDC, pBitmapInfo, DIB_RGB_COLORS, 0, 0, 0);
Später mag ich diese Bitmap wieder zu verwenden, sondern nur die zu 300x100 Bitmap-Größe zu ändern (und das alte Bild löschen kann, weil ich es nicht mehr benötigen). Viele sagen, dass ich eine neue Bitmap mit neuer Größe erstellen und die alte Bitmap löschen muss. Aber ich habe irgendwie erwartet, dass wir die alte Bitmap wiederverwenden können. Ich möchte kein neues Bitmap neu erstellen, da es eine langsame Leistung verursacht, während ich es mehrmals wiederholen muss. Gibt es eine Möglichkeit, die Bitmap-Größe zu ändern, ohne eine neue Bitmap neu zu erstellen?
Wenn Sie die Bitmap in zwei Größen benötigen, würde ich zwei Bitmaps erstellen. Die Größenänderung sieht wahrscheinlich schlecht aus. Sie müssen nichts wiederholt erstellen, lassen Sie einfach jedes Bitmap "leben", solange es benötigt wird. –
Welche Umgebung verwenden Sie? Sicher nicht alle von VB/C/C++/Delphi .... Ich würde vorschlagen, alle diese Tags zu löschen und einfach "WinAPI" hinzufügen. – Johan
Wie Strings sind Bitmaps unveränderlich. Einmal erstellt, können sie nicht geändert werden. Sie können jedoch nur einen Teil einer Bitmap anzeigen oder mit "StretchBlt" strecken. – IInspectable