Hoe computers kleuren maken: RGB, HEX en binaire getallen
#FF0000. #00FF00. #0000FF. Notaties die je vast weleens bent tegengekomen in een ontwerp of een codebestand. Ze zien er uit als een geheime code of een spelcheat. Maar het zijn gewoon namen van kleuren.
Van boven naar beneden: rood, groen, blauw. Dit zijn de namen die computers gebruiken voor kleuren. Hier leggen we uit waar die notatie vandaan komt.
RGB — drie letters die kleur maken
Red, Green, Blue. De drie primaire kleuren van licht. Door ze in verschillende verhoudingen te mengen, ontstaan alle kleuren die we zien.
We zien elke dag RGB
Overal waar een scherm is, is er ook RGB.
- Monitor / tv — één pixel bestaat uit drie subpixels: rood, groen en blauw
- Smartphone-display — dezelfde opbouw, kleinere pixels
- Gaming-toetsenbord-LED — drie LED-lampjes (R, G en B) per toets
- PC-behuizingsverlichting — RGB-strips sturen RGB-signalen
Zoom ver genoeg in op een scherm en je ziet het zelf. Rood, groen, blauw. Dat is alles. Miljoenen kleine RGB-punten samen vormen het beeld dat je ziet.
Kleuren ontstaan door te mengen
Elk RGB-kanaal heeft een waarde van 0 tot 255.
RGB(255, 0, 0)— alleen rood op maximum → puur roodRGB(0, 255, 0)— alleen groen op maximum → puur groenRGB(255, 255, 0)— rood + groen → geelRGB(0, 0, 0)— alles uit → zwartRGB(255, 255, 255)— alles op maximum → wit
Dat rood en groen samen geel geven voelt misschien contra-intuïtief, maar dit is additieve kleurmenging met licht. Het werkt anders dan verf mengen op school (rood + groen = bruin). Licht wordt helderder naarmate je meer kleuren toevoegt; combineer ze allemaal en je krijgt wit.
Versleep de drie schuifregelaars hieronder om het zelf te ervaren.
Het 8-cijferige getal rechts is de binaire weergave van dat kanaal. Versleep de schuifregelaar en het getal verandert mee. Hoe je met alleen nullen en enen 256 waarden maakt, is het volgende onderwerp.
Waarom precies 0 tot 255?
Computers werken alleen met 0 en 1. Eén positie die 0 of 1 kan bevatten heet een bit. Elk extra bit verdubbelt het aantal mogelijke waarden.
8 bits = 1 byte. Eén kleur heeft drie RGB-kanalen, dus 3 bytes = 24 bits. Met 24 bits zijn ongeveer 16,7 miljoen kleuren mogelijk — genoeg voor het menselijk oog, vandaar dat 1 byte de standaard werd per kanaal.
Binaire getallen zelf lezen
Elke positie heeft een vaste waarde. Van links naar rechts: 128, 64, 32, 16, 8, 4, 2, 1 — machten van 2.
Tel alle posities met een 1 bij elkaar op en je krijgt het decimale getal.
De maximale waarde van 8 bits is dus 255. Dat is precies waarom elk RGB-kanaal loopt van 0 tot 255.
HEX — hetzelfde getal, maar korter
RGB(255, 255, 255). Dat zijn 16 tekens. Elke keer opschrijven in een CSS-regel of een ontwerptool kost ruimte. Daarom bestaat er een kortere manier om hetzelfde getal te noteren.
Wat is hexadecimaal?
Hexadecimaal is een talstelsel waarbij één teken de waarden 0 tot 15 kan aanduiden. Ons gewone decimale stelsel gebruikt cijfers van 0 tot 9 — dat zijn er maar 10. De ontbrekende 6 worden geleend van het alfabet.
Drie regels om te onthouden:
- 0–9 werkt gewoon zoals gewoonlijk
- Vanaf 10 begint het met A
- F is de hoogste waarde voor één teken (= 15)
Waarom precies hexadecimaal?
4 binaire cijfers (0000 – 1111) stellen exact 16 waarden voor.
4 binaire cijfers = 1 hexadecimaal teken. Vier tekens worden teruggebracht naar één. Omdat een RGB-kanaal 8 bits is, past het precies in twee hexadecimale tekens.
RGB omzetten naar HEX
Laten we RGB(255, 87, 51) omzetten.
14 tekens worden teruggebracht naar 7 tekens.
Een kleur aflezen uit HEX
Andersom: als je een HEX-code ziet, kun je ook een idee krijgen van de kleur.
#FF5733— R maximaal (FF), G halfhoog (57), B laag (33) → sterk rood → oranje#3576E0— R laag (35), G middelhoog (76), B sterk (E0) → licht paars-getint blauw#29A85A— R laag (29), G sterk (A8), B laag (5A) → fris groen
Zodra je de eerste drie segmenten kunt aflezen en zegt “dit is oranje” of “dit is blauw”, praten designers en developers dezelfde taal.
Samengevat in één oogopslag
- RGB — drie kanalen (rood, groen, blauw), elk van 0 tot 255
- Binair 8 bits — waarom elk kanaal 256 stappen heeft
- HEX — dezelfde waarde, maar compact geschreven in twee tekens per kanaal
Zodra je die drie concepten als één geheel ziet, is een kleurcode geen geheimtaal meer. De drie getallen van RGB zijn precies de zes tekens van HEX.
De volgende stap is deze getallen vertalen naar de taal van ontwerpers. Verzoeken als „iets lichter”, „minder verzadigd” of „hetzelfde op papier” zijn moeilijk te realiseren met alleen RGB en HEX. Hoe HSL, CMYK en OKLCH dit oplossen, staat in RGB is niet genoeg: HSL, CMYK en OKLCH – kleurnotaties uitgelegd.