Forum: Object-Pascal / Delphi-Language
by Medium,
24. Apr 2020
Aha! Nur bei 1-Bit bzw. transparenter Farbe (welche artverwandt sind). Das lässt darauf schließen, dass die verwendete Resampling-Methode den "Alphakanal" für diese falsch behandelt. Ich habe das jetzt nicht mehr ganz im Kopf: Was für ein Filter wird denn beim Vergrößern benutzt? Bei Nutzung von Nearest-Neighbour würde ich fast vermuten, dass es kein Problem geben sollte. (Sieht natürlich auch...
Forum: Object-Pascal / Delphi-Language
by Medium,
17. Apr 2020
Es gibt bei transparenten Bitmaps eigentlich keinen richtigen oder falschen Hintergrund - zumindest, solange es noch nicht auf das finale Bild gezeichnet wurde, auf dem es angezeigt werden soll. Weiß ist genauso falsch wie Schwarz (und technisch gesehen ist transparent-schwarz (=0) richtiger für "leer" als nicht-transparent-weiß (=$FFFFFFFF)). Was man eigentlich in dieser Situation haben will...
Forum: Object-Pascal / Delphi-Language
by Medium,
17. Apr 2020
Da wird das Problem dann sein, dass .Draw() vermutlich die Transparenzen des Originalbildes wirklich zum Zeichnen benutzt, und ein Blend aus BMP und PNG erstellt. Das wäre für .Draw() auch richtig - aber nicht für .Assign()! Dank Alpha unterscheidet sich Zeichnen erheblich von Kopieren, und das ist in der Tat ein dicker Fehler in der gezeigten Methode. Allerdings auch schon in der alten...
Forum: Object-Pascal / Delphi-Language
by Medium,
15. Apr 2020
Grundsätzlich sollte das mit einem TBitmap32.DrawTo(TImage32.Bitmap) erledigt sein, ggf. noch ein TImage32.Bitmap.Clear vorausgeschickt. Zeig im Zweifel doch mal das Stück Code, in dem das gemacht wird. Dann kann man evtl. konkreter helfen.