Kurzerklärung
Es werden aus den drei Farbwerten für Rot, Grün und Blau die jeweiligen Hexadezimalwerte ermittelt und in die folgende Schreibweise umgeformt: #RRGGBB. Wenn wir die Farbe Rot umwandeln, besteht sie aus 255 roten, 0 grünen und 0 blauen Anteilen. Die RGB-Schreibweise ist dann folgendermaßen: rgb (255, 0, 0).
Diese Farbwerte werden dann jeweils in einen Hexadezimalwert umgewandelt. Aus 255 wird FF, aus 0 wird 00. Damit ergibt sich der Farbwert in hexadezimaler Schreibweise mit #FF0000.
Berechnungsbeispiel
Wir werden nachfolgend am Beispiel der Farbe chartreuse2 eine Umrechnung von rgb zu hex beschreiben.
Ausgangswert ist die Farbe im RGB-Format:
RGB = rgb (118, 238, 0)
Diese Werte werden auf die jeweiligen Farben Rot, Grün und Blau aufgeteilt:
Rot = 118
Grün = 238
Blau = 0
Diese Farbwerte müssen nun von dem Dezimalsystem in das Hexadezimalsystem umgerechnet werden. Dazu muss man wissen, dass die Zahlen von 0 bis 9 für die Werte der Hexadezimalzahlen 0 bis 9 stehen und danach die Zahl 10 für den Buchstaben A oder a, 11 für B oder b, 12 für C oder c, 13 für D oder d, 14 für E oder e und 15 für F oder f. Das bedeutet in unserem Beispiel, dass wir zu Beginn den Wert für Rot (118) umwandeln müssen. Dazu teilen wir den Wert durch 16 (118 / 16 = 7.375). Die Nachkommastellen werden dann mit 16 multipliziert und gegen den Hexadezimalwert ausgetauscht (0.375 * 16 = 6 | 6 bleibt im Hexadezimalsystem 6). Da wir hier im 2-stelligen Hexadezimalbereich rechnen, ist die Vorkommastelle der Wert, den wir in eine Hexadezimalzahl umformen können (7 / 16 = 0.4375 | 0.4375 * 16 = 7). Die Werte werden von hinten nach vorn zusammengestellt, also in unserem Fall 76. Daraus ergeben sich dann die folgenden Berechnungen:
Rot = 118
Rot = 118 / 16 = 7.375 ⇒ 0.375 * 16 = 6
Rot = 7 / 16 = 0.4375 ⇒ 0.4375 * 16 = 7
Rot = 76
Grün = 238
Grün = 238 / 16 = 14.875 ⇒ 0.875 * 16 = 14 = E
Grün = 14 / 16 = 0.875 ⇒ 0.875 * 16 = 14 = E
Grün = EE
Blau = 0
Blau = 0 / 16 = 0 ⇒ 0 * 16 = 0
Blau = 00
Um das Ergebnis unserer Berechnung zu erhalten, müssen die berechneten Werte nun in die Hexadezimal-Schreibweise #RRGGBB gebracht werden:
Hex = #76EE00