Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

CeDoMain

Alter Hase

  • »CeDoMain« ist der Autor dieses Themas

Beiträge: 587

Wohnort: Ilmenau

Beruf: Student für Mechatronik

  • Private Nachricht senden

1

21.08.2016, 20:14

[HTML & CSS] Bilder überlagern und die Farben addieren

Hallo Leute,

für ein kleines Projekt im Browser möchte ich Farben aus den drei Anteilen Yellow, Magenta und Cyan mischen. Ich habe drei PNGs, die jeweils in diesen Farben gefärbt sind und an bestimmten Stellen transparent sind. Ich habe sie mal angehangen. Nun möchte ich die drei Bilder gedreht übereinander legen und die Farben mischen. An Stellen wo alle drei Farben übereinanderliegen soll das Bild schwarz sein und an Stellen wo alle drei Transparent sind soll das Bild weiß sein. Die einzelnen Kanäle müssen im Prinzip nur addiert werden. Ich habe mit CSS und Alphablending herumprobiert, aber das funktioniert nicht wie gewünscht, weil ich keine Volltonfarben herausbekomme. Ist ja auch logisch bei einem Alphawert von 0.5...

Was gibt es für andere Methoden? Am liebsten wäre mir eine reine CSS & HTML Lösung. Kann man irgendwie das farbmischverhalten umstellen oder andere Farben benutzen? Die Möglichkeit mit JS einen eigenen "Sampler" zu schreiben ist mir bewusst, aber den aufwand möchte ich nicht machen.

Mein Ziel ist eine solche Uhr zu simulieren. Hoffe, das ist jetzt keine Schleichwerbung! Diese Uhren bestehen aus drei Scheiben mit den Farben Yellow, Cyan und Magenta. Die Farben sind auf den Scheiben mehr oder weniger stark aufgetragen. Die Scheiben stellen die einzelnen Zeiger der Uhr dar und drehen sich - dadurch enstehen die bunten Farbverläufe.
»CeDoMain« hat folgende Bilder angehängt:
  • dot_b.png
  • dot_h.png
  • dot_m.png
Mit freundlichem Gruß
CeDo
Discord: #6996 | Skype: cedomain

Lass solche persönlichen Angriffe lieber bleiben, meine sind härter.

Nimelrian

Alter Hase

Beiträge: 1 216

Beruf: Softwareentwickler (aktuell Web/Node); Freiberuflicher Google Proxy

  • Private Nachricht senden

2

21.08.2016, 20:53

Eventuell ist background-blend-mode: multiply was für dich?
Ich bin kein UserSideGoogleProxy. Und nein, dieses Forum ist kein UserSideGoogleProxyAbstractFactorySingleton.

David Scherfgen

Administrator

Beiträge: 10 382

Wohnort: Hildesheim

Beruf: Wissenschaftlicher Mitarbeiter

  • Private Nachricht senden

3

21.08.2016, 22:20

An Stellen wo alle drei Farben übereinanderliegen soll das Bild schwarz sein und an Stellen wo alle drei Transparent sind soll das Bild weiß sein. Die einzelnen Kanäle müssen im Prinzip nur addiert werden.
Wieso addiert? Dann kann doch nicht schwarz rauskommen, wenn du sie mischst.

Eventuell ist background-blend-mode: multiply was für dich?
Eher mix-blend-mode! Das andere bezieht sich nur auf ein einzelnes Element.

CeDoMain

Alter Hase

  • »CeDoMain« ist der Autor dieses Themas

Beiträge: 587

Wohnort: Ilmenau

Beruf: Student für Mechatronik

  • Private Nachricht senden

4

22.08.2016, 07:55

Wieso addiert? Dann kann doch nicht schwarz rauskommen, wenn du sie mischst.
Wenn der Farbcode CCMMYY lautet und ich #FF0000 (Cyan), #00FF00 (Magenta) und #0000FF (Yellow) addiere, dann bekomme ich doch #FFFFFF (Schwarz) heraus.

Eher mix-blend-mode! Das andere bezieht sich nur auf ein einzelnes Element.
Danke! Genau das habe ich gesucht. Jetzt funktioniert die Mischung wie meine Uhr - sieht richtig schön aus. :)
Mit freundlichem Gruß
CeDo
Discord: #6996 | Skype: cedomain

Lass solche persönlichen Angriffe lieber bleiben, meine sind härter.

David Scherfgen

Administrator

Beiträge: 10 382

Wohnort: Hildesheim

Beruf: Wissenschaftlicher Mitarbeiter

  • Private Nachricht senden

5

22.08.2016, 08:06

Wenn der Farbcode CCMMYY lautet und ich #FF0000 (Cyan), #00FF00 (Magenta) und #0000FF (Yellow) addiere, dann bekomme ich doch #FFFFFF (Schwarz) heraus.

Es ist aber #RRGGBB, und da ist #FFFFFF Weiß.

CeDoMain

Alter Hase

  • »CeDoMain« ist der Autor dieses Themas

Beiträge: 587

Wohnort: Ilmenau

Beruf: Student für Mechatronik

  • Private Nachricht senden

6

25.08.2016, 17:59

Das war nur ein Beispiel. Mein Code lautete: #CCMMYY - hätte ich vielleicht erwähnen sollen. Wolle halt irgendwie die Addition darstellen. ;)
Mit freundlichem Gruß
CeDo
Discord: #6996 | Skype: cedomain

Lass solche persönlichen Angriffe lieber bleiben, meine sind härter.

Werbeanzeige