Home | Registrieren | Einloggen | Suchen | Aktuelles


Forum » PHP & MySQL » Farben vergleichen Antworten
Farben vergleichen

Can
Halbgott


Beiträge: 1330


Ich möcht mir (in PHP) ne Funktion schreiben, die 2 Farben vergleicht und z.B. in Prozent angibt, wie ähnlich sich diese beiden Farben sind. Das ganze dient dem, dass ich die Schriftfarbe auf ner Website mit der Hintergrundfarbe vergleichen kann und, falls die sich zu ähnlich sind, die Schriftfarbe ändere, also z.B. die invertierte Hintergrundfarbe nehme. Wie kann ich das anstellen, wenn ich jeweils die RGB-Werte der Farben hab?

Can


---
"S-púrlawits'chkâ A-ngáse gûrewüdíx" - Zaphrot Bibelprox

  Profil   E-Mail   Editieren   Zitieren

Agent
Quasselstrippe


Beiträge: 312


Hey Can,

erstmal muss ich sagen, das es mich ein wenig wundert das so eine Frage von dir kommt.
Ich war mir sicher das würdest du selber lösen können. Scheinbar nicht, macht ja auch nix (das ist als Kompliment zu verstehen)

Angenommen:

RGB(255,10,0)

und

RGB(235,0,0)

splitten, einzelne werte voneinander abziehen (255-235, 10-0, 0-0), wenn differenz kleiner als X (80?) dann andere farbe nehmen.
Wobei wie gross X sein sollte, muss du selber mal schauen bzw. ausprobiern.

Wäre das ein denkbarer Ansatz? Oder hab ich dich völlig misverstanden?

Gruß,

Agent


---
Wie soll ich wissen was ich denke, bevor ich höre was ich sage?

  Profil   Website   Editieren   Zitieren

Can
Halbgott


Beiträge: 1330


Wundert mich irgendwie, dass es dich wundert...mach ich so nen kompetenten Eindruck? ;)

Mir ist schon klar, dass es darum geht die Differenz der R-/G-/B-Werte zu verwenden, das hab ich auch gemacht, aber wie gehts dann weiter? Soll die andre Farbe genommen werden, wenn die Differenz aller Werte kleiner x ist, oder mindestens einer, oder soll ich den Durchschnitt nehmen und mit dem arbeiten (das hab ich allerdings schon getan, das tut logischerweise nicht, wie's soll)?

---
"S-púrlawits'chkâ A-ngáse gûrewüdíx" - Zaphrot Bibelprox

  Profil   E-Mail   Editieren   Zitieren

NetDrag
Foren-Team


Beiträge: 461


ne, es geht ja um das gesammte.
cccccc schaut natürlich anders aus als 0000DD auch wenn zwischen den Blau Werten nicht viel unterschied ist. Also mußt du das gesamte berücksichtigen.

---
We are born wet, naked and hungry, then things got worse!

  Profil   Website   Editieren   Zitieren

Agent
Quasselstrippe


Beiträge: 312


Hey,

@can: naja, zumindest keinen total inkompenter Eindruck der bei mir hinterlassen wurde

Ich denke du wirst um viel testen und probieren nicht rumkommen. Im Sinne von:
ccddee <-> aaddee angucken, ist dir das zu gleich? dann andere farbe, und dann weisst du das wenn sich nur block (cc) in zu wenig schritten (c -> a) unterscheidet, da nicht reicht.
255,0,0 <-> 215,0,0 geht vielleicht nicht, aber 215,55,0 geht vielleicht schon wieder. Da wirst du dir ein paar werte rausuchen müssen, ab wann dir was zu gleich ist, und wann nicht. Vermutung: die addition der differenzen sollte unter gewissen umständen reichen. Vorrausgesetzt, die differenzen sind nicht gleichmäßig bei allen drei Blöcken.

Hth,

Agent

PS: Ab sofort halte ich dich natürlich für total inkompetent und unfähig.

---
Wie soll ich wissen was ich denke, bevor ich höre was ich sage?

  Profil   Website   Editieren   Zitieren

Can
Halbgott


Beiträge: 1330


So, dann lös ich das ganze mal auf. Ich bin für eine Auswertung zu diesem Forum geschickt worden, um zu schauen, was deutsche Webworker so alles können. Selbstverständlich weiß ich ganz genau, wie dieses Problem zu lösen ist. Ich muss aber sagen, dass ich von den Ansätzen mehr als begeistert bin. Um die Ergebnisse zu erfahren, wendet euch per E-Mail oder ICQ (136774019) an mich.



Ich hab schon einiges ausprobiert, allerdings ist das nicht sehr universell, für manche Farben funktionierts ziemlich schlecht. Vielleicht muss ich das auch noch in ein paar Abfragen gliedern. Ich probier einfach noch ein bisschen weiter...

Can

---
"S-púrlawits'chkâ A-ngáse gûrewüdíx" - Zaphrot Bibelprox

  Profil   E-Mail   Editieren   Zitieren

Agent
Quasselstrippe


Beiträge: 312


Ich wusste doch, das du von alleine drauf kommst

Bist also doch kompetent

Gruß,

ein kompetenter Agent
(can: you have new PM, you have new mail)

---
Wie soll ich wissen was ich denke, bevor ich höre was ich sage?

  Profil   Website   Editieren   Zitieren
 

Antworten
Nach oben