Einzelnen Beitrag anzeigen

Medium

Registriert seit: 23. Jan 2008
3.679 Beiträge
 
Delphi 2007 Enterprise
 
#14

AW: PNG in TImage falsch dargestellt

  Alt 17. Apr 2020, 17:53
Mit der PNG Unit von D7 kann man transparente PNG problemlos laden und anzeigen. Dass das in Rio nicht mehr geht hat ganz andere Gründe. Da hat nämlich irgend ein Witzbold einfach den transparenten Teil auf fix schwarz gesetzt.
Ja Moment, das stimmt nur teilweise. Die Farbe wird auf "0" gesetzt, d.h. 100% transparent Schwarz! Sichtbares Schwarz wäre clBlack, oder rgb(0, 0, 0) oder $FF000000 oder 4278190080. Das ist meines Erachtens nach richtig, und letztlich nur ein Initialisieren des soeben ggf. in der Größe geänderten Bitmaps um Restmüll aus dem Speicherbereich sicher zu entfernen.

Das Problem müsste später auftreten; da wo dieses Bitmap auf einen Bildschirm-Canvas gemalt wird. Und DAS ist wiederum Aufgabe der GDI. Eventuell wurde hier etwas an den Aufrufen geändert, das kann ich grad nicht prüfen, aber ich habe gute Erinnerung daran, dass ich mit Alphakanälen unter purer GDI immer irgendwo Probleme hatte. Mindestens in Delphi 7, aber auch noch in 2007. Mit neueren hatte ich bislang nicht mit Transparenzen zu tun.
"When one person suffers from a delusion, it is called insanity. When a million people suffer from a delusion, it is called religion." (Richard Dawkins)
  Mit Zitat antworten Zitat