Einzelnen Beitrag anzeigen

Benutzerbild von Ben1
Ben1

Registriert seit: 11. Okt 2004
Ort: Rostock
36 Beiträge
 
Delphi 6 Personal
 
#9

Re: Ein Rechteck auf TBitmap.Canvas mit transparenter Farbe?

  Alt 18. Okt 2004, 14:48
Nur weil dir die Ideen zu aufwendig sind kannst du doch nicht gleich behaupten das keiner eine hat.
Das was du willst ist typisches Alphablending, etwas das nunmal von vielen Anwendungen nicht automatisch unterstützt wird.

Es ist doch nicht weiter schwer alle Pixel im Bereich durchzulaufen und für jeden nach einer simplen Formel den neuen Farbwert zu berechnen.

Und so geht das :

alte Farbe(Rd, Gd, Bd)
überdeckende Farbe (Rs, Gs, Bs)
A= Alphachannel = transparens der Farbe in %, 0 bis 1

Die neue Farbe ergibt sich dann so :

rot = Rs * A + Rd * (1 - A)
grün = Gs * A + Gd * (1 - A)
blau = Bs * A + Bd * (1 - A)

um deine Farben in die rot, grün und blau Anteile zu zerlegen und wieder zusammen zu fügen gibt es fertig Funktionen (siehe Hilfe RGB).
Das zu programmieren ist eine Sache von vielleicht 10 Minuten !
Ben
---------------------------------------
Spielanleitung !? Wieso ? Wozu ?
Im Quelltext steht doch alles drin !
Zitat: Ich selbst (1998)
  Mit Zitat antworten Zitat