AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Multimedia Delphi Zwei Transparente PNGs kombinieren
Thema durchsuchen
Ansicht
Themen-Optionen

Zwei Transparente PNGs kombinieren

Ein Thema von ddcool · begonnen am 29. Aug 2011 · letzter Beitrag vom 31. Aug 2011
 
ddcool

Registriert seit: 8. Jun 2003
146 Beiträge
 
Delphi XE2 Architect
 
#1

Zwei Transparente PNGs kombinieren

  Alt 29. Aug 2011, 11:03
Hallo liebe DPler,

ich möchte gerne zwei PNGs, die beide transparente Bereiche enthalten miteinander kombinieren, so dass die Transparenz der beiden Bilder nicht addiert wird. Im Anhang ein Beispiel, welches genau das Problem aufzeigt. Der untere schwarze Kasten und der Verlaufeffekt sind das erste Bild, welches als Hintergrund benutzt wird. der obere Kasten ist das Bild, welches auf den Hintergrund gezeichnet wird.
Dazu benutzte ich folgende Methode:

Code:
  TestImage := TPngImage.Create;
  TestImage.Assign(TPngImage(imgBackground.Picture.Graphic));
  TestImage.Canvas.Draw(20, 30, ImageList.ButtonImage);
  ...
  TPngImage(imgBackground.Picture.Graphic).Assign(TestImage);
(ImageList.ButtonImage ist vom Typ TPngImage und wird zuvor mit einem PNG befüllt)

Eigentlich ist der obere Kasten (ButtonImage) eine gleichbleibend halb transparente schwarze Box, jedoch wird die Transparenz des Hintergrundes addiert, sodass das ButtonImage mit verblasst.

Gibt es eine Möglichkeit das zu verhindern, bzw das ButtonImage auf dem Hintergrund anders zu Zeichnen, sodass die korrekte Transparenz bestehen bleibt?

In diesem Thread wird das ganze ansatzweise besprochen, jedoch möchte ich nicht jeden Pixel umrechnen müssen.

Danke für jede Hilfe!


Lieben Gruß,

ddcool
Angehängte Grafiken
Dateityp: jpg test.jpg (1,2 KB, 32x aufgerufen)

Geändert von ddcool (29. Aug 2011 um 12:05 Uhr)
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 00:30 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz