Kurzerklärung
Es werden aus den vier CMYK-Werten für Cyan, Magenta, Gelb und Schwarz drei Farbwerte für Rot, Grün und Blau ermittelt.
Daraus werden die jeweiligen Hexadezimalwerte berechnet, um sie in die folgende Schreibweise umzuformen: #RRGGBB. Wenn wir die Farbe Rot umwandeln, besteht sie aus 0% Cyan, 100% Magenta, 100% Gelb und 0% Schwarz. Die CMYK-Schreibweise ist dann folgendermaßen: cmyk (0%, 100%, 100%, 0%).
Diese Farbwerte werden in einen Hexadezimalwert umgewandelt. Damit ergibt sich der Farbwert in Hex-Schreibweise mit #FF0000. Es ist immer mit einem Verlust von Farbgenauigkeit zu rechnen, wenn man von CMYK in ein anderes Farbformat umrechnet. Da CMYK ohne Transparenzwert rechnet, ist es nicht möglich daraus eine Hexadezialfarbe mit Transparenz zu berechnen.
Berechnungsbeispiel
Wir werden am Beispiel eines Grüntones eine Umrechnung von cmyk zu hex beschreiben.
Ausgangswert ist die Farbe im CMYK-Format:
CMYK = cmyk (37%, 0%, 21%, 45%)
Diese Werte werden auf die jeweiligen Farben Cyan, Magenta, Gelb und Schwarz aufgeteilt:
Cyan = 37
Magenta = 0
Gelb = 21
Schwarz = 45
Diese Farbwerte müssen zunächst von dem CMYK-Farbsystem in das Dezimalsystem von RGB umgerechnet werden. Da die Farben nicht direkt zusammen passen, ist die Umrechnung nicht so einfach. Die Farbwerte werden mit bestimmten Formeln ermittelt.
Rot = 255 * ((1 - Cyan / 100) * (1 - Schwarz / 100))
Grün = 255 * ((1 - Magenta / 100) * (1 - Schwarz / 100))
Blau = 255 * ((1 - Gelb / 100) * (1 - Schwarz / 100))
Das bedeutet in unserem Beispiel, dass wir zu Beginn den Wert für Rot aus Cyan und Schwarz berechnen müssen. Dann rechnen wir den Wert für Grün aus Magenta und Schwarz. Danach errechnen wir den Wert für Blau aus Gelb und Schwarz. Daraus ergeben sich dann die folgenden Berechnungen:
Rot = 255 * ((1 - 37 / 100) * (1 - 45 / 100))
Rot = 88
Grün = 255 * ((1 - 0 / 100) * (1 - 45 / 100))
Grün = 140
Blau = 255 * ((1 - 21 / 100) * (1 - 45 / 100))
Blau = 111
Diese Farbwerte müssen 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 (88) umwandeln müssen. Dazu teilen wir den Farbwert durch 16 (88 / 16 = 5.5). Die Nachkommastellen werden dann mit 16 multipliziert und gegen den Hexadezimalwert ausgetauscht (0.5 * 16 = 8 | 8 bleibt im Hexadezimalsystem 8). Da wir hier im 2-stelligen Hexadezimalbereich rechnen, ist die Vorkommastelle der Wert, den wir in eine Hexadezimalzahl umformen (5 / 16 = 0.3125 | 0.3125 * 16 = 5 | 5 bleibt im Hexadezimalsystem 5). Die Werte werden von hinten nach vorn zusammengestellt, also in unserem Fall 58. Daraus ergeben sich dann die folgenden Berechnungen:
Rot = 88
Rot = 88 / 16 = 5.5 ⇒ 0.5 * 16 = 8
Rot = 5 / 16 = 0.3125 ⇒ 0.3125 * 16 = 5
Rot = 58
Grün = 140
Grün = 140 / 16 = 8.75 ⇒ 0.75 * 16 = 12 = C
Grün = 8 / 16 = 0.5 ⇒ 0.5 * 16 = 8
Grün = 8C
Blau = 111
Blau = 111 / 16 = 6.9375 ⇒ 0.9375 * 16 = 15 = F
Blau = 6 / 16 = 0.375 ⇒ 0.375 * 16 = 6
Blau = 6F
Um das Ergebnis unserer Berechnung zu erhalten, müssen die berechneten Hexadezimalwerte nun in die Hexadezimal-Schreibweise #RRGGBB gebracht werden:
Hex = #588C6F