Color converter — HEX, RGB, HSL & OKLCH
Converteer HEX naar RGB, HSL, OKLCH, OKLAB en CMYK in je browser — kopieer elk formaat met één klik. Gratis, geen account, je kleuren verlaten de pagina nooit.
Kleurenblindheid-simulatie (8 typen)
Tints / Shades / Tones / Harmonies
Tints
Shades
Tones
Harmonies
Copy as code
— — — — — Referentie van gangbare kleuren
Wat is een color converter?
Een color converter is een klein hulpmiddel dat één enkele kleurwaarde vertaalt tussen de formaten die je toolchain, je design system en je browser daadwerkelijk begrijpen — HEX, RGB, HSL, HSV, HWB, CMYK, OKLCH, OKLAB en de 148 CSS named colors. Online converters zijn al een vast onderdeel van webtooling sinds de vroege jaren 2000, toen het antwoord bijna altijd een eenvoudige HEX-naar-RGB-textbox was, gebouwd voor een Geocities-tijdperk-stylesheet. Wat een moderne converter onderscheidt van die oude tools, zijn drie dingen: een unified-field-UX waarin elk formaat tegelijk bewerkbaar is in plaats van een eenrichtings-dropdown, een OKLCH-bron-van-waarheid die de canonieke waarde intern vasthoudt zodat round-trips bit-stabiel blijven, en perceptuele wiskunde verankerd in W3C CSS Color 4 in plaats van de gamma-verstrikte HSL-rekenkunde die de generatie van 2003 shippte.
Verschillende kleurruimtes bestaan omdat verschillende problemen verschillende representaties nodig hebben, en geen enkele ruimte is overal goed in. RGB is hardware-native — hij mapt direct op de rode, groene en blauwe subpixels van een LCD of de fosforen van een CRT, met elke channel gecodeerd als 8-bit integer van 0 tot 255. HEX is gewoon RGB in grondtal-16, gepakt in een string van zes tekens voor compacte CSS- en Figma-copy-paste. HSL, HSV en HWB zijn designer-cognitieve ruimtes — cilindrische hervormingen van RGB waarmee je met intuïtieve sliders kleurtoon kunt draaien, verlichten of verdonkeren. HSL werd in 1978 gepubliceerd naast HSV door Alvy Ray Smith; HWB werd toegevoegd in 1996 als schoner mentaal model (Hue + hoeveelheid Wit + hoeveelheid Zwart). CMYK is een drukproces-abstractie — een subtractieve inktstapel (Cyaan, Magenta, Yellow, Key=zwart) die modelleert hoe inkt licht absorbeert op papier in plaats van hoe een scherm het uitzendt. OKLCH en OKLAB zijn perceptuele ruimtes — ze zijn zo ontworpen dat gelijke numerieke afstand overeenkomt met gelijke waargenomen afstand, waardoor ze onmisbaar zijn voor design-system-ramps en toegankelijkheids-wiskunde. Named colors zijn CSS-legacy: de 148 SVG/CSS3-namen zoals `tomato`, `rebeccapurple` en `slategray` die met elke browser meekomen.
Meer dan twintig jaar was sRGB "goed genoeg" — een IEC-standaard uit 1996, gebouwd rond de fosfor-primaria van de CRT-monitoren van die tijd. Hij definieerde stilletjes de bovengrens van wat een webkleur kon betekenen. Toen braken wide-gamut-displays die aanname open. Apple's Display P3 dekt ongeveer 50% meer van het zichtbare spectrum dan sRGB en zit nu in elke iPhone, iPad en MacBook vanaf 2017. Rec2020 dekt nog meer en is de broadcaststandaard voor HDR-tv. HSL bakte sRGB's gamma-eigenaardigheden diep in zijn definitie, en daarom oogt een HSL-ramp visueel ongelijkmatig op een wide-gamut-display — een groen op L=50% oogt helderder dan een blauw op L=50%, omdat HSL's L geometrisch is, niet perceptueel. In 2020 publiceerde Björn Ottosson OKLAB, een perceptueel-uniforme kleurruimte afgeleid van CIE-LAB met gecorrigeerde lightness-respons en schoner gedrag bij hoge verzadiging. OKLCH is de polaire vorm ervan (Lightness / Chroma / Hue), dezelfde shape als HSL maar met de perceptuele wiskunde gerepareerd. CSS Color 4 voegde `oklch()`- en `oklab()`-syntax toe in 2022; Chrome 111 shippte ondersteuning in maart 2023, Safari 15.4 had het al sinds maart 2022, en Firefox 113 landde in mei 2023. Tailwind v4, uitgebracht in 2025, maakte OKLCH zijn standaard color-token-formaat; shadcn/ui volgde kort daarna. Deze tool weerspiegelt die verschuiving door OKLCH tot de interne bron van waarheid te maken — elke conversie loopt via OKLCH, dus een HEX → RGB → OKLAB → HEX round-trip stapelt geen float-drift op, en het direct bewerken van de L-channel van OKLCH werkt elk ander veld exact bij.
Welke ruimte je pakt hangt volledig af van wat je doet. **HEX** is de juiste keuze voor web-embedding, copy-paste tussen designtools en code, en overal waar compacte identifiers ertoe doen — `#3b82f6` past comfortabel in een CSS-variabele en de meeste front-end-developers herkennen 'm op het zicht. De aparte hex naar RGB converter dekt de meest voorkomende richting in één stap; de omgekeerde RGB naar hex converter dekt het geval waarin je losse channel-integers hebt van een designer of een pipeline voor pixelwiskunde. **RGB** is voor directe hardware-adressering — overal waar je 0-255 integers nodig hebt (canvas-API's, beeldmanipulatie, hardware LED-strips, OpenGL-kleurattributen). **HSL** is de legacy designer-cognitieve ruimte — kleurtoon draaien, verlichten, verdonkeren — en nog steeds nuttig als je een snelle CSS-kleur moet tweaken in een project dat nog niet naar OKLCH is gemigreerd. De eenrichtings- hex naar HSL converter is de juiste shortcut als dat is wat je nodig hebt. **HSV en HWB** zijn designer-color-picker-ruimtes. HSV (Hue, Saturation, Value) matcht het saturation-value-vierkant dat de meeste picker-UI's tekenen, dus dat is wat Photoshop, Figma en Sketch rapporteren als je op de eyedropper klikt. HWB is het schonere mentale model — kies een pure kleurtoon, voeg dan wit toe om lichter of zwart om donkerder te maken — en CSS Color 4 voegde native `hwb()`-ondersteuning toe in alle evergreen-browsers. **CMYK** is voor printvoorbereiding. Een nuchtere disclaimer: onze CMYK-uitvoer is een naïeve sRGB-gebaseerde benadering met de standaardformule `K = 1 - max(R,G,B); C = (1-R-K)/(1-K)`. Echte printnauwkeurigheid vereist een ICC-profiel-conversie tegen de specifieke pers, inkt en papier — typisch US Web Coated SWOP v2 of Fogra39 — wat kanalen 5-15% kan verschuiven. Behandel onze CMYK als startschatting, niet als deliverable. De eenrichtings- hex naar CMYK converter past dezelfde formule met dezelfde caveat toe. **OKLCH** is de standaardkeuze voor nieuwe code in 2025 en verder — moderne design systems, toegankelijkheidsbewuste paletgeneratie, overal waar perceptuele uniformiteit telt. De eenrichtings- hex naar OKLCH converter bestaat voor snelle migratie van een legacy-palet. **OKLAB** is de rechthoekige neef gebruikt voor palet-wiskunde: midpoints tussen twee kleuren, afstandsberekeningen, kleurenblindheid-simulatie-matrices en andere bewerkingen die lineaire-as-rekenkunde nodig hebben. **Named colors** zijn voor documentatie, code-commentaar, mockups en proza — de 148 CSS named colors zijn een vast woordenboek, en de tool vindt de dichtstbijzijnde named color voor elke invoer via ΔE-afstand in OKLAB.
De conversie-graaf in het hart van dit alles is goed gedefinieerd en verrassend schoon. sRGB en linear-sRGB zijn gerelateerd via een stukgewijze gammacurve gespecificeerd in W3C CSS Color 4 §11.2 (ongeveer een 2,4-exponent met een klein lineair segment rond nul). Linear-sRGB en CIE XYZ D65 zijn gerelateerd via een vaste 3×3-matrix uit CSS Color 4 §15.1. XYZ D65 en OKLAB zijn gerelateerd via twee matrices en een derdemachtswortel-stap (de LMS-cone-respons-stap, per Ottosson 2020). OKLAB en OKLCH zijn gerelateerd via een cartesiaans-naar-polair-transform — `C = sqrt(a² + b²); H = atan2(b, a)`. HEX is gewoon sRGB geserialiseerd als `#RRGGBB` in grondtal-16. RGB ↔ HSL, RGB ↔ HSV, RGB ↔ HWB zijn directe geometrische transforms binnen sRGB, gedefinieerd in CSS Color 4 §5-7. CMYK is de naïeve sRGB-gebaseerde formule hierboven. De hele pipeline is een gerichte graaf met OKLCH intern als wortel; elk ander formaat wordt op elke toetsaanslag daaruit berekend.
Naast de kern-conversie shipt deze tool features die de legacy-generatie niet had. **Display P3- en Rec2020-gamutdetectie** — drie badges markeren of de huidige kleur binnen het reproduceerbare bereik van elke ruimte valt, met een **Snap to sRGB**-knop die binaire chroma-reductie gebruikt (per CSS Color 4's informatieve algoritme) om de kleur te verkleinen totdat hij past. **WCAG 2- + APCA Lc-dubbele contrast-badges** — beide metrieken in één rij weergegeven zodat je vandaag de regelgevende standaard haalt en met de toekomstgerichte perceptuele metriek sanity-checkt. **8 kleurenblindheid-simulaties** — protanopia, deuteranopia en tritanopia via de Brettel-Viénot-Mollon 1997 dichromatie-matrices; protanomaly, deuteranomaly en tritanomaly via Machado-Oliveira-Fernandes 2009 anomale-trichromatie-matrices op severity 0,66; achromatopsia en gedeeltelijke achromatomaly via rec601 luminantie-gewichten. **OKLCH-uniforme paletgeneratie** — tints, shades, tones en harmonies gebouwd door de L-channel in gelijke stappen te verzetten met vaste C en H (dezelfde constructie als het standaardpalet van Tailwind v4). **CSS / Tailwind v4 / SwiftUI / Compose / Flutter-codesnippets** — plak-klare uitvoer voor de vijf platforms die de meeste cross-team-teams aanspreken. **EyeDropper API-integratie** op Chromium-browsers (Chrome, Edge, Brave, Opera) voor het pakken van kleuren overal op het scherm inclusief buiten de browser. **URL-hash-state** — de huidige kleur codeert in de URL als `#hex=...` of `#oklch=...` zodat je een live link naar exact dezelfde kleur met één kopie kunt delen.
Alles in deze tool draait lokaal in je browser. Je kleurwaarden worden nooit geüpload, nooit gelogd, nooit geanalyseerd, nooit op een server opgeslagen. Nul netwerkverzoeken terwijl je typt — open DevTools → Netwerk en kijk: typen in een willekeurig veld triggert nul verkeer. Het verschil met klassieke server-gebaseerde converters is direct meetbaar: een tool die op elke toetsaanslag de waarde via een endpoint heen en weer stuurt, betaalt 80-300 ms latency per wijziging en logt de waarde aan de serverkant — twee redenen waarom unified-field-bewerken op afstand niet kan werken zoals het hier doet. Dat maakt de tool veilig voor onaangekondigde merkpaletten, interne design-token-systemen, concept-mockups en al het andere vertrouwelijke kleurwerk. Geen cookies registreren wat je plakt; geen analytics vuren op kleurwijzigingen. Dezelfde houding strekt zich uit tot de URL-hash: het `#hex=...`-fragment leeft alleen in je adresbalk en wordt nooit naar de server verzonden (browsers nemen het fragment niet op in HTTP-verzoeken), dus zelfs een gedeelde link lekt de kleur niet naar enige derde partij anders dan de ontvanger die je 'm stuurt. Voor teams die werken aan pre-launch merkwerk, embargoed campagnes of klantpaletten onder NDA telt dat zwaarder dan de gemakskop suggereert. Wil je het zelf controleren: open de pagina, ga offline (DevTools → Netwerk → Offline) en typ door — de conversies blijven doorlopen, de gamut-badges blijven werken, de paletgeneratie blijft werken. Alleen de eerste paginalaadbeurt heeft het netwerk nodig; daarna is de tool volledig autonoom. Voor een diepere duik in waarom OKLCH in 2024–2026 de standaard werd voor design systems, lees onze begeleidende gids: OKLCH-kleurruimte uitgelegd — waarom Tailwind v4 erop overstapte.
// sRGB → linear → XYZ D65 → OKLAB → OKLCH
// References: W3C CSS Color 4 §11-15, Ottosson 2020 (https://bottosson.github.io/posts/oklab/)
// Worked example: #3b82f6 (Tailwind blue-500)
const srgb = [0x3b, 0x82, 0xf6].map(v => v / 255); // [0.231, 0.510, 0.965]
const toLinear = (v) => v <= 0.04045 ? v / 12.92 : Math.pow((v + 0.055) / 1.055, 2.4);
const lin = srgb.map(toLinear); // gamma-decoded linear-sRGB
// linear-sRGB → XYZ D65 (CSS Color 4 §15.1 matrix)
const [lr, lg, lb] = lin;
const x = 0.4124564 * lr + 0.3575761 * lg + 0.1804375 * lb;
const y = 0.2126729 * lr + 0.7151522 * lg + 0.0721750 * lb;
const z = 0.0193339 * lr + 0.1191920 * lg + 0.9503041 * lb;
// XYZ D65 → LMS (Ottosson 2020 matrix), cube-root, → OKLAB
const l_ = Math.cbrt(0.8189330101 * x + 0.3618667424 * y - 0.1288597137 * z);
const m_ = Math.cbrt(0.0329845436 * x + 0.9293118715 * y + 0.0361456387 * z);
const s_ = Math.cbrt(0.0482003018 * x + 0.2643662691 * y + 0.6338517070 * z);
const L = 0.2104542553 * l_ + 0.7936177850 * m_ - 0.0040720468 * s_;
const a = 1.9779984951 * l_ - 2.4285922050 * m_ + 0.4505937099 * s_;
const b = 0.0259040371 * l_ + 0.7827717662 * m_ - 0.8086757660 * s_;
// OKLAB → OKLCH (Cartesian to polar)
const C = Math.sqrt(a * a + b * b);
const H = (Math.atan2(b, a) * 180 / Math.PI + 360) % 360;
console.log(`oklch(${L.toFixed(3)} ${C.toFixed(3)} ${H.toFixed(1)})`);
// → oklch(0.629 0.193 263.4) Kernfuncties
9 simultaan bewerkbare kleurruimtes
Elk formaat — HEX, RGB, HSL, HSV, HWB, CMYK, OKLCH, OKLAB en CSS named color — is een direct bewerkbaar veld, geen eenrichtings-dropdown. Typ een `oklch()`-waarde en HEX, RGB, HSL worden allemaal bijgewerkt; plak een hex uit Figma en OKLCH werkt bij met de matchende perceptuele coördinaten. De cursor in het veld dat je bewerkt blijft staan — alleen de andere acht velden re-renderen op elke toetsaanslag, dus bewerken voelt natuurlijk.
OKLCH als bron van waarheid — bit-perfecte round-trips
De interne canonieke representatie is OKLCH, de perceptueel-uniforme polaire vorm van OKLAB (Ottosson 2020). Elk ander formaat wordt daarvan afgeleid op elke toetsaanslag. Dit betekent dat HEX → RGB → HSL → OKLAB → HEX round-trips zonder float-drift verlopen — de originele hex komt onveranderd terug. Legacy-converters die conversies via HSL of sRGB routen, stapelen per-stap-afrondingsfout op; deze tool niet.
Display P3 + Rec2020 gamut-waarschuwingen
Drie live badges (sRGB, Display P3, Rec2020) tonen of de huidige kleur binnen het reproduceerbare bereik van elke ruimte valt. Handig als je in OKLCH werkt en wilt weten welke displays de waarde accuraat zullen weergeven — veel Tailwind v4 OKLCH-kleuren overschrijden sRGB maar passen in P3, wat de meeste Apple-apparaten sinds 2017 kunnen renderen. De Snap to sRGB-knop gebruikt het binaire chroma-reductie-algoritme van CSS Color 4 om de kleur te verkleinen totdat hij past.
WCAG 2 + APCA contrast in één rij
Contrast tegen zowel wit als zwart wordt getoond met twee metrieken naast elkaar: de WCAG 2.1-ratio (4,5:1 = AA lopende tekst, 7:1 = AAA) voor regelgevende compliance vandaag, en de APCA Lc-score (het toekomstgerichte WCAG 3 perceptuele contrastalgoritme). APCA is polariteit-gevoelig (licht-op-donker weegt anders dan donker-op-licht), wat WCAG 2's symmetrische formule fout doet. Gebruik beide: WCAG voor audits, APCA voor echte leesbaarheid.
Kleurenblindheid-simulatie over 8 deficiëntietypen
Live voorvertoningen voor de drie dichromaties (protanopia, deuteranopia, tritanopia) via Brettel-Viénot-Mollon 1997-matrices, de drie anomale trichromaties (protanomaly, deuteranomaly, tritanomaly) via Machado-Oliveira-Fernandes 2009-matrices op severity 0,66, plus achromatopsia en achromatomaly via rec601 luminantie-gewichten. Dekt ongeveer 8% van de mannen en 0,5% van de vrouwen — de populaties waarvoor je ontwerp toegankelijk moet blijven.
OKLCH-uniforme tints, shades, tones en harmonies
Palet-ramps worden gegenereerd door de L-channel in gelijke OKLCH-stappen te verzetten met vaste Chroma en Hue — dezelfde constructie als Tailwind v4. Het resultaat is perceptueel gelijkmatig: de visuele afstand tussen de stops 400 en 500 oogt identiek aan die tussen 500 en 600, wat een HSL-ramp niet kan garanderen. Harmonies (complement, triad, tetrad, split-complement) roteren Hue met exacte hoeken en behouden L+C.
Copy as CSS / Tailwind v4 / SwiftUI / Compose / Flutter
Met één klik codegeneratie voor de vijf platforms waarheen de meeste cross-team-teams shippen: CSS custom property (`--color-brand: oklch(0.629 0.193 263.4)`), Tailwind v4 `@theme`-token, SwiftUI `Color(red:green:blue:)`-literal, Jetpack Compose `Color(0xFF3B82F6)`-constante, Flutter `Color(0xFF3B82F6)`. De exacte syntax die elk platform verwacht, klaar om te plakken in een merkstylesheet, een iOS-asset catalog of een Android-thema.
Handgeschreven OKLCH-picker (nul afhankelijkheden)
Het SL-vierkant + de hue-slider + de alpha-slider zijn geschreven in plain canvas + JavaScript zonder externe picker-bibliotheek. De OKLCH-gradient op de hue-slider wordt berekend uit echte OKLCH-wiskunde, niet benaderd met HSL, dus het slepen van de slider produceert perceptueel-uniforme kleurtoonrotatie. Het bundle-gewicht blijft onder 10 KB voor de hele interactieve laag; de first paint is snel, zelfs op cold loads.
100% in-browser — geen upload, geen tracking
Alle conversie-wiskunde, paletgeneratie, contrastscoring en gamutdetectie draait lokaal in je browser. Je kleurwaarden worden nooit verzonden, nooit op een server opgeslagen, nooit gelogd, nooit geanalyseerd. Nul netwerkverzoeken terwijl je typt — verifieer in DevTools. Veilig voor onaangekondigde merkpaletten, interne design-tokens, concept-mockups en al het andere vertrouwelijke kleurwerk.
Color converter-alternatieven vergeleken
ColorHexa
browsertoolEen veteraan-concurrent met diepe per-kleur-informatiepagina's — genereert een volledige SEO-pagina per hex met conversies, paletten, harmonies en gradients. UI is gedateerd (esthetiek van begin jaren 2010), geen OKLCH-ondersteuning, geen APCA-contrast, geen wide-gamut-afhandeling. Sterk voor SEO-vindbaarheid van een specifieke kleur ("#FF5733" als zoekquery); zwakker voor actief designwerk waar unified-field-UX ertoe doet.
RapidTables
browsertoolBrede selectie eenrichtings-converters (HEX naar RGB, RGB naar HEX, HEX naar HSL, enz.) plus andere unit-tools. Elke conversie is een aparte pagina met een eenrichtingsformulier — geen live unified-fields-ervaring. Geen OKLCH-ondersteuning, geen gamut-waarschuwingen, geen contrast-check. Bruikbaar voor losse snelle conversies wanneer je vanuit een Google-zoekopdracht binnenkomt; deze tool is sneller voor elke workflow met meer dan één conversie.
HTMLColorCodes
browsertoolSterke color-picker en palet-generator met een schone UI. De picker-UX is goed voor visuele exploratie. De converter-kant is basaal — HEX, RGB, HSL, HSV, CMYK alleen; geen OKLCH, geen OKLAB, geen gamutdetectie. Het beste als je variaties van een kleur visueel wilt verkennen; deze tool wint wanneer je moderne kleurruimtes of nauwkeurige conversie-wiskunde nodig hebt.
OKLCH.com
browsertoolPrachtig gebouwde OKLCH-gerichte tool door Andrey Sitnik (auteur van de postcss-oklab-function polyfill). Best-in-class voor OKLCH-specifieke exploratie met een wide-gamut-bewuste picker en paletgeneratie. Dekt HEX/RGB/HSL/CMYK-conversie niet als primaire uitvoer — gericht op OKLCH alleen. Pak OKLCH.com wanneer je puur OKLCH-designwerk doet; pak deze tool wanneer je cross-space-conversie nodig hebt.
ConvertingColors
browsertoolDekt veel kleurruimtes (HEX, RGB, HSL, HSV, CMYK, XYZ, CIELAB en meer) met een per-kleur-SEO-contentpagina-model vergelijkbaar met ColorHexa. Mist moderne OKLCH-ondersteuning, geen APCA-contrast, geen wide-gamut-afhandeling, en de auto-gegenereerde contentpagina's ogen content-farm-achtig. Goed voor het uitpluizen van individuele kleur-metadata; deze tool is sneller voor actief design- en toegankelijkheidswerk.
IT-Tools
open-source browsertoolSchone zelf-hostbare Vue 3-verzameling devtools, met een color converter tussen veel andere utilities. UX is consistent over de hele suite. De color converter dekt HEX, RGB, HSL, HSV, CMYK; geen OKLCH, geen gamut-waarschuwingen, geen contrast-check, geen kleurenblindheid-simulatie. De moeite waard om lokaal te draaien als je een zelf-gehoste multi-tool-collectie wilt; deze tool is de toegewijde, diepere alleen-kleur-optie.
W3Schools Color Converter
browsertoolBasale HEX/RGB/HSL-toggle op een beginnersvriendelijke pagina, alomtegenwoordig in zoekresultaten voor color-converter-queries. Geen OKLCH, geen geavanceerde features. Bruikbaar als leerreferentie naast W3Schools' uitleg-content. Deze tool wint op elke andere as: meer ruimtes, perceptuele wiskunde, gamut + contrast + CVD-features, moderne Tailwind v4 / SwiftUI / Compose / Flutter codeexport.
Voorbeelden van kleurconversie
Tailwind v4 merkkleur → OKLCH
#3b82f6
OKLCH-uitvoer: `oklch(0.629 0.193 263.4)`. Plak dat direct in een Tailwind v4 `@theme`-blok als `--color-brand-500: oklch(0.629 0.193 263.4);` en de rest van je ramp lijnt perceptueel uit. Tailwind v4 standaardiseerde in 2024 op OKLCH voor zijn standaardpalet juist omdat de L-channel de waargenomen helderheid consistent houdt over kleurtonen heen — green-500 en blue-500 ogen even helder, wat HSL/RGB-ramps niet kunnen garanderen. De hex blijft letterlijk bewaard als je ook een fallback nodig hebt voor oudere browsers.
Web-hex → SwiftUI Color-literal
#FF5733
SwiftUI-uitvoer (onder Copy as code → SwiftUI): `Color(red: 255/255, green: 87/255, blue: 51/255)`. De klassieke iOS- / macOS-workflow: een designer dropt een hex in het merkpaneel van Figma, je plakt die hier, en kopieert de SwiftUI-literal in een `View`. De expressievorm (met de expliciete `/255`-deling) is bewust — die overleeft een code review beter dan de ondoorzichtige `Color(red: 1.0, green: 0.341, blue: 0.2)` omdat de originele merk-hex in de broncode zichtbaar blijft.
Designerpalet-kleurstaal → CMYK-benadering voor print
#FF6347
CMYK-uitvoer: ongeveer `cmyk(0%, 61%, 72%, 0%)`. Dit is een naïeve sRGB → CMYK-conversie via de standaardformule `K = 1 − max(R,G,B); C = (1−R−K)/(1−K)` — bruikbaar als snelle startschatting voor een printofferte, maar geen vervanging voor de echte conversie. Een drukkerij draait het bestand door een ICC-profiel (typisch US Web Coated SWOP v2 of Fogra39) afgestemd op de exacte pers, inkt en papier, wat kanalen 5-15% kan verschuiven. Behandel dit getal als sanity check, niet als deliverable.
OKLCH wide-gamut-kleur → sRGB-fallback
oklch(0.7 0.25 30)
De gamut-rij markeert deze kleur direct als **buiten sRGB** (Display P3 dekt 'm wel, Rec2020 ook). Op een standaardmonitor rendert hij als gedesatureerde benadering; op een P3-capabele display (de meeste laptops geleverd na 2017) rendert hij verzadigd. Klik **Snap to sRGB** om chroma te verlagen tot de kleur in de sRGB-kubus past, en kopieer dan de resulterende hex (rond `#ef6b50`) als fallback. Met OKLCH als bron van waarheid kun je de wide-gamut-waarde in je design-token houden en de gesnapte hex shippen als `@supports not (color: oklch(...))`-fallback.
WCAG-contrast voor lopende tekst verifiëren
#767676
Tegen wit (`#ffffff`) komt de WCAG 2.1-contrastratio uit op ongeveer **4,54:1** — net boven de 4,5:1 AA-drempel voor lopende tekst. Drop één cijfer naar `#777777` en de ratio zakt naar 4,48:1, wat AA niet haalt. De APCA Lc-waarde verschijnt ernaast als toekomstgerichte metriek (WCAG 3 draft) — APCA scoort dit paar rond `Lc 60`, iets onder de aanbevolen `Lc 75` voor lopende tekst. Gebruik beide: WCAG om audits te halen, APCA om er zeker van te zijn dat het resultaat ook echt leesbaar oogt.
De CSS named color vinden die het dichtst bij een merk-hex ligt
#FF6347
Het veld **Named** geeft `tomato (exact)` terug omdat de CSS-spec `tomato` letterlijk definieert als `#FF6347` — een van de 148 named colors die met elke browser meekomen. Probeer een bijna-match als `#FF6348` en het veld geeft `tomato (nearest, ΔE 0.02)` terug, met de dichtstbijzijnde named color en hoe ver hij ernaast zit volgens CIE ΔE (Delta E in OKLAB-ruimte). Handig als je teksten of opmerkingen schrijft en een leesbare kleurnaam wilt in plaats van een hexcode.
Een oude HSL-waarde omzetten naar modern OKLCH
hsl(220 70% 50%)
OKLCH-uitvoer: ongeveer `oklch(0.5 0.187 263)`. HSL's L=50% is **geen** perceptuele 50% — blauw op L=50% oogt veel donkerder dan geel op L=50%, omdat HSL een cilindrische hervorming is van sRGB, niet een uniforme ruimte. OKLCH's L=0,5 komt feitelijk overeen met de mid-grijze luminantie die je oog waarneemt. Wanneer je een HSL-design system naar OKLCH migreert, schuiven de L-waarden (blauwtinten omhoog, geeltinten omlaag) — dat is het systeem dat zichzelf corrigeert, geen bug.
Een palet van 5 lichte en 5 donkere varianten vanuit een merkkleur vinden
#3b82f6
De sectie **Tints / Shades / Tones / Harmonies** genereert 5 lichtere en 5 donkere varianten door de OKLCH L-channel in gelijke stappen te verzetten terwijl C en H vast blijven. Het resultaat is een perceptueel gelijkmatige ramp — de afstand tussen `500` en `600` oogt hetzelfde als die tussen `600` en `700`, en dat is wat een design system nodig heeft. Klik op een kleurstaal om die als actieve kleur te laden, en kopieer de hex/OKLCH. Dezelfde constructie als Tailwind v4's standaard-paletgenerator.
Zo gebruik je de color converter
- 1
Plak of typ elke kleur in elk formaat
Elk van de 9 formaatvelden (HEX, RGB, HSL, HSV, HWB, CMYK, OKLCH, OKLAB, Named) is direct bewerkbaar — er is geen "Converteren"-knop om op te klikken. Plak een hex uit Figma, typ een `oklch()`-waarde uit een Tailwind-config, drop een `hsl()` uit een oude stylesheet, of typ zelfs een CSS named color zoals `tomato`. De tool parseert incrementeel terwijl je typt, dus een half-getypte waarde blaast de andere niet weg totdat je een geldig formaat vastlegt. Ongeldige invoer krijgt een rustige inline foutmelding; geldige invoer werkt de volledige grid bij.
- 2
Alle 9 formaten worden direct bijgewerkt
De interne bron van waarheid is OKLCH (perceptueel uniform, gamut-onbegrensd), en elk ander formaat wordt daarvan afgeleid bij elke toetsaanslag. Het veld waarin je typt behoudt zijn cursorpositie ongemoeid — alleen de *andere* acht velden re-renderen. Dat betekent dat je de L-channel van OKLCH direct kunt bewerken en hex, RGB, HSL en CMYK in realtime ziet meeschuiven zonder je cursor te verliezen. De conversie-wiskunde draait volledig in JavaScript met dezelfde OKLAB-primitieven die in moderne browsers zitten.
- 3
Gebruik de picker voor visuele exploratie
Onder de formaatgrid zit een saturation-lightness-vierkant (sleep om S+L voor de huidige kleurtoon te zetten), een hue-slider (sleep om rond de kleurencirkel te draaien), en een alpha-slider (sleep voor transparantie). Op Chromium-gebaseerde browsers (Chrome, Edge, Brave) activeert de **Eyedropper**-knop de native `EyeDropper`-API — klik ergens op het scherm, ook buiten het browserscherm, om de kleur van die pixel te samplen. Safari en Firefox shippen de API nog niet, dus daar is de knop verborgen en blijven het SL-vierkant + de hue-slider de primaire picker.
- 4
Check gamut en contrast in één oogopslag
Drie gamut-badges (**sRGB**, **Display P3**, **Rec2020**) tonen of de huidige kleur binnen het reproduceerbare bereik van elke ruimte valt — handig als je in OKLCH werkt en wilt weten welke displays de waarde accuraat zullen weergeven. De contrastrij toont de WCAG 2.1-ratio tegen zowel wit als zwart, plus de APCA Lc-score (toekomstgerichte WCAG 3-metriek). Pass / fail-badges (AA, AAA) verschijnen inline. Als een kleur buiten gamut van sRGB valt, verkleint een **Snap to sRGB**-knop de chroma tot hij past.
- 5
Kopieer in de native syntax van je platform
Elk van de 9 formaatvelden heeft een eigen **Kopiëren**-knop — één klik, de waarde belandt op je klembord, het label springt kort op "Gekopieerd!" zodat je het weet. Onder de picker genereert de sectie **Copy as code** plak-klare snippets voor vijf platforms: CSS custom property, Tailwind v4 `@theme`-token, SwiftUI `Color(red:green:blue:)`-literal, Jetpack Compose `Color(0xFF...)`-constante, en Flutter `Color(0xFF...)`. De URL-hash (`#hex=...` of `#oklch=...`) wordt ook bijgewerkt zodat je een live link naar exact dezelfde kleur kunt delen.
Veelgemaakte fouten bij kleurconversie
HSL met OKLCH verwarren
Beide ruimtes delen dezelfde cilindrische Hue / Lightness / (Saturation of Chroma)-shape, waardoor ze op papier uitwisselbaar lijken. Dat zijn ze niet. HSL's L is geometrisch — afgeleid van RGB door max- en min-channel-waarden te middelen — en bakt sRGB's gammacurve in. OKLCH's L is perceptueel, verankerd aan het OKLAB-model. Een HSL-ramp op uniforme L oogt visueel ongelijkmatig over kleurtonen heen; een OKLCH-ramp op uniforme L blijft gelijk. Vervang de een niet door de ander in een design-system-migratie zonder bij te tunen.
Aannemen dat een HSL-palet perceptueel uniform is: hsl(220 50% 30%) → hsl(220 50% 60%) → hsl(220 50% 90%) Op het scherm oogt dit ongelijkmatig verdeeld.
Gebruik OKLCH voor perceptueel-uniforme ramps: oklch(0.30 0.10 220) → oklch(0.60 0.10 220) → oklch(0.90 0.10 220) Op het scherm oogt dit gelijkmatig verdeeld.
Naïeve CMYK vertrouwen voor print
De CMYK-uitvoer hier komt uit de standaard schoolboekformule `K = 1 - max(R,G,B)` toegepast op sRGB. Het is een nuttig richtgetal, geen vervanging voor de echte conversie. Drukkerijen draaien bestanden door een ICC-profiel (US Web Coated SWOP v2, Fogra39, Japan Color 2011, enz.) afgestemd op de specifieke pers, inkt en papier. ICC-geconverteerde CMYK kan 5-15% per channel verschillen van de naïeve formule. Stuur de originele sRGB-hex naar de drukker en laat hem de juiste conversie doen.
Stuur onze CMYK-uitvoer direct naar een pers: hex #FF6347 → cmyk(0%, 61%, 72%, 0%) Het geprinte resultaat kan vies of oververzadigd ogen.
Stuur de originele hex naar de drukker: hex #FF6347 → laat de drukker ICC-converteren tegen zijn pers Het geprinte resultaat matcht de schermkleur veel nauwkeuriger.
APCA Lc lezen als WCAG-2-compatibel getal
APCA Lc en WCAG 2-ratio's zijn verschillende schalen die verschillende dingen meten. WCAG 2 geeft een ratio van 1:1 (geen contrast) tot 21:1 (max contrast), met 4,5:1 als wettelijke AA-ondergrens voor lopende tekst. APCA geeft Lc van 0 tot ±108 met teken dat polariteit aangeeft (positief voor donkere tekst op lichte achtergrond, negatief voor lichte tekst op donkere achtergrond). Lc 60 mapt niet naar WCAG 4,5:1; de relatie is niet-lineair en richtingsafhankelijk. Gebruik beide metrieken naast elkaar, niet de een als vertaling van de ander.
Doen alsof Lc 60 = WCAG 4,5:1: APCA Lc 60 → "dit haalt AA" WCAG 2-ratio voor hetzelfde paar zou 3,8:1 kunnen zijn (faalt AA).
Check beide metrieken onafhankelijk: WCAG 2-ratio ≥ 4,5:1 voor AA-compliance lopende tekst, EN APCA |Lc| ≥ 75 voor real-world leesbaarheid. Beide moeten slagen, niet de een als substituut voor de ander.
HSL gebruiken voor design-system-schaduwen
Het genereren van een 50/100/200/.../900-ramp door de L-channel van HSL te verzetten levert een visueel ongelijkmatige ramp op omdat HSL's L niet perceptueel is. De donkere stops ogen te donker, de lichte stops te licht, en de middelste stops worden samengedrukt. Designers fixen dit door elke stop met de hand te tunen, een oefening van meerdere uren per merkkleur. OKLCH lost het probleem door constructie op — gelijke L-stappen ogen gelijk — dus de ramp is gelijk bij de eerste poging.
L verzetten in HSL voor schaduwen: hsl(220 50% 30%) / hsl(220 50% 60%) / hsl(220 50% 90%) 90% oogt uitgewassen; 30% oogt veel donkerder dan de afstand naar 60%.
L verzetten in OKLCH voor schaduwen: oklch(0.30 0.10 220) / oklch(0.60 0.10 220) / oklch(0.90 0.10 220) Elke stap oogt als dezelfde visuele afstand.
Alpha vergeten bij het kopiëren van HEX
8-cijferige hex (`#RRGGBBAA`) en de 4-cijferige verkorte vorm (`#RGBA`) coderen alpha-transparantie in het laatste paar. CSS ondersteunt beide; oudere parsers (waaronder sommige legacy CSS-preprocessors en designtools van vóór 2018) begrijpen alleen 6-cijferige hex en kappen de alpha stilletjes af. Resultaat: een kleur die je 50% transparant verwachtte rendert volledig dekkend. Verifieer altijd dat de doel-syntax 8-cijferige hex accepteert voor je alpha-dragende waarden kopieert; voor legacy-targets, val terug op `rgba()`.
Kopieer 8-cijferige hex naar een legacy-parser: #FF573380 → parser kapt af → #FF5733 (geen alpha) De 50%-transparantie gaat stilletjes verloren.
Verifieer dat het doel 8-cijferige hex ondersteunt, of gebruik rgba(): voor modern CSS: #FF573380 (8-cijferige hex) voor legacy-support: rgba(255, 87, 51, 0.5) (altijd ondersteund) Expliciete alpha-syntax voorkomt stille afkapping.
Naar sRGB snappen zonder Display P3 mee te wegen
Snap to sRGB is een nuttig vangnet voor legacy-contexten, maar het zonder onderscheid toepassen ondermijnt het wide-gamut-display waarvoor je mogelijk ontwerpt. De meeste Apple-apparaten vanaf 2017 renderen Display P3 native; veel moderne Android-apparaten en laptopschermen ook. Een wide-gamut OKLCH-kleur die sRGB overschrijdt maar in P3 past, oogt dramatisch verzadigder op P3-hardware dan de gesnapte sRGB-benadering. Check eerst de P3 gamut-badge; snap alleen wanneer je sRGB-only-legacy-contexten target.
Snap elke OKLCH-kleur standaard naar sRGB: oklch(0.7 0.25 30) → snap → oklch(0.7 0.18 30) P3-displays verliezen 30%+ verzadiging zonder reden.
Check eerst de Display P3-badge: als fits-P3: houd de wide-gamut-waarde, voeg sRGB-fallback toe via @supports als exceeds P3: dan snappen naar sRGB Laat de wide-gamut-hardware zijn werk doen.
Wie gebruikt deze tool
- Frontend-devs migreren naar Tailwind v4 OKLCH-tokens
- Tailwind v4 standaardiseerde in 2024 op OKLCH voor zijn standaardpalet. Het migreren van een oud HSL- of hex-gebaseerd design system betekent honderden merkkleuren naar OKLCH omzetten. Plak elke hex, kopieer de OKLCH-uitvoer, drop in het `@theme`-blok. De live gamut-badges markeren kleuren die sRGB overschrijden zodat je kunt beslissen of je de wider-gamut-waarde houdt voor Display P3-displays.
- Designers vertalen Figma-kleuren naar iOS / Android
- Figma exporteert standaard hex, maar iOS wil SwiftUI `Color(red:green:blue:)`-literals en Android wil Jetpack Compose `Color(0xFF...)`-constantes. Plak de Figma-hex één keer, kopieer de SwiftUI-snippet voor de iOS-engineer en de Compose-snippet voor de Android-engineer — beide al in de exacte syntax die elk platform verwacht, met de originele hex bewaard in een commentaar voor traceerbaarheid.
- Designers bereiden printproofs voor (CMYK-benadering)
- Wanneer een merkkleur op een gedrukt visitekaartje moet verschijnen, geeft de CMYK-benadering een snelle schatting om te delen met de drukkerij vóór de echte ICC-conversie. Plak de merk-hex, kopieer de CMYK-percentages, stuur naar de drukker voor een snelle prijsopgave — laat dan de ICC-profiel-bewuste conversie van de drukker over om de uiteindelijke kleurmatch tegen de specifieke pers te doen.
- Toegankelijkheidsengineers verifiëren WCAG en APCA
- WCAG 2.1 is de regelgevende standaard (ADA, EAA, Section 508) vandaag; APCA Lc is de voorgestelde WCAG 3-opvolger. Beide metrieken naast elkaar tonen betekent dat een designer een lopende-tekst-kleur kan verifiëren op 4,5:1 WCAG tegen wit, en dan sanity-checken dat hij ook door APCA Lc 75 komt, op één scherm — zonder tussen twee aparte calculators te springen.
- Onderwijzers leggen kleurruimte-concepten uit
- De simultane negen-veldenweergave maakt kleurruimte-relaties zichtbaar. Typ een OKLCH-waarde, kijk hoe HSL afdwaalt omdat L iets anders betekent in elke ruimte. Sleep de hue-slider en kijk hoe hex, RGB en CMYK allemaal bijwerken. Laat zien hoe de gamut-badges rood worden als je chroma voorbij sRGB duwt. De tool is zijn eigen klaslokaal-demo voor een graphics- of HCI-cursus op universiteitsniveau.
- Brandmanagers vinden de dichtstbijzijnde CSS named color
- Wanneer de marketingtekst zegt "een tomaatkleurig accent" maar de feitelijke merk-hex is `#FF6347`, geeft het Named-veld `tomato (exact)` terug omdat dat letterlijk is wat `tomato` oplevert in de CSS-spec. Voor bijna-match-hexen geeft het veld de dichtstbijzijnde named color terug met de ΔE-afstand in OKLAB — handig voor documentatie, proza en informeel kleurbenoemen.
- Web-devs converteren legacy HEX-paletten naar OKLCH
- Een oudere site kan een merkpalet van 50 kleuren hebben dat in CSS custom properties als hex-codes is gedefinieerd. Moderniseren naar OKLCH laat het merkteam dezelfde ramps in een perceptueel-uniforme ruimte uitdrukken. Plak elke hex, kopieer de OKLCH-uitvoer, swap in de variabele-definities. Het Tints/Shades-paneel eronder verifieert dat de resulterende ramp visueel gelijkmatig is voor je shippt.
- Open-source-maintainers documenteren design tokens
- Design-token-documentatie moet meestal dezelfde kleur in meerdere syntaxen tonen — hex voor het CSS-codeblok, OKLCH voor de spec-tabel, de named color voor proza-vermeldingen. De simultane-veldweergave laat een maintainer elk in één pass kopiëren in plaats van drie aparte conversies opnieuw te draaien. De deelbare URL-hash laat contributors ook linken naar de exact besproken kleur in een GitHub-issue.
Wiskunde & algoritmen achter kleurconversie
- OKLCH als interne bron van waarheid
- De tool houdt de canonieke kleurwaarde intern aan als OKLCH-triple. Elk bewerkbaar veld leidt zijn weergavewaarde uit dat triple af op elke toetsaanslag; elke bewerking door de gebruiker werkt eerst het triple bij en triggert dan een re-render van de andere acht velden. Dit elimineert de per-stap float-drift die converters teistert die via HSL of sRGB als pivot routen. De keuze voor OKLCH boven OKLAB is bewust — de polaire vorm behoudt Hue als stabiele as, dus het slepen van de hue-slider crossfadet niet per ongeluk door grijs. Per Björn Ottossons paper uit 2020 is OKLAB's perceptuele uniformiteit het sterkste argument om het te behandelen als lingua franca van moderne kleur-wiskunde.
- Matrix-bronnen (W3C CSS Color 4 + Ottosson 2020)
- Elke conversiematrix in de codebase wordt geciteerd naar zijn primaire bron. De sRGB ↔ linear-sRGB stukgewijze gammafunctie is W3C CSS Color 4 §11.2 (`v <= 0.04045 ? v/12.92 : ((v+0.055)/1.055)^2.4`). De linear-sRGB ↔ CIE XYZ D65 3×3-matrix is CSS Color 4 §15.1. De XYZ D65 ↔ LMS-matrix en de OKLAB derdemachtswortel-stap zijn uit Ottossons referentie-implementatie op `https://bottosson.github.io/posts/oklab/`, precies zoals gepubliceerd. Geen enkele matrix wordt herberekend of opnieuw afgeleid — ze letterlijk overnemen houdt de uitvoer identiek aan de referentievectoren van de spec.
- Naïeve CMYK-formule en de ICC-caveat
- Onze CMYK-uitvoer gebruikt de standaard schoolboekformule: `K = 1 - max(R, G, B); C = (1-R-K)/(1-K); M = (1-G-K)/(1-K); Y = (1-B-K)/(1-K)` werkend op genormaliseerde sRGB-waarden. Dit is een bewuste benadering. Echte printnauwkeurigheid vereist een ICC-profiel-conversie tegen de specifieke pers, inkt (bijv. US Web Coated SWOP v2, Fogra39, Japan Color 2011) en papier, wat kanalen 5-15% kan verschuiven. We tonen het CMYK-veld met een zichtbare disclaimer zodat gebruikers onze waarden niet direct naar een pers shippen. Behandel de uitvoer als sanity check voor offertes, niet als deliverable.
- Gamutdetectie via channel-range-check
- Een kleur wordt als in-gamut beschouwd voor een doelruimte (sRGB, Display P3, Rec2020) als elke channel binnen `[-ε, 1 + ε]` valt na conversie naar de primaria van die ruimte, waarbij `ε = 1e-7` om float-precisie-ruis rond grenzen op te vangen. De gamut-badge voor elke ruimte wordt rood wanneer een channel het bereik overschrijdt. Dit vangt het gangbare geval — een wide-gamut OKLCH-kleur als `oklch(0.7 0.4 30)` rapporteert buiten-sRGB maar in-P3, en vertelt je welke displays hem accuraat zullen weergeven. De check draait op elke toetsaanslag.
- Chroma-reductie snap-algoritme
- Snap to sRGB gebruikt binaire zoek op de Chroma-as: houd L en H vast op de huidige waarden, zoek C ∈ [0, currentC] voor de grootste C waarvan de sRGB-conversie in-gamut blijft. De zoek loopt maximaal 30 iteraties (precisie ~10⁻⁹), wat ruim genoeg is voor visuele nauwkeurigheid. Dit matcht het informatieve gamut-mapping-algoritme beschreven in CSS Color 4 §13 — lightness en hue behouden terwijl alleen chroma wordt verlaagd, houdt de gesnapte kleur herkenbaar binnen dezelfde kleurtoon-familie. We clippen niet direct op RGB-kanalen omdat dat hue merkbaar vervormt (vooral bij blauwen).
- Brettel + Machado CVD-matrices
- Kleurenblindheid-simulatie gebruikt twee gepubliceerde matrix-families. De drie dichromaties — protanopia, deuteranopia, tritanopia — gebruiken Brettel-Viénot-Mollon 1997-matrices die werken in linear-RGB (eerst gamma-decoderen, matrix toepassen, weer gamma-encoderen). De drie anomale trichromaties — protanomaly, deuteranomaly, tritanomaly — gebruiken Machado-Oliveira-Fernandes 2009-matrices op severity 0,66, wat overeenkomt met een typische anomale-trichromatie-patiënt. Achromatopsia en gedeeltelijke achromatomaly gebruiken rec601 luminantie-gewichten (`0,299R + 0,587G + 0,114B`) voor een grijsschaal-projectie. Alle acht simulaties renderen op elke kleurwijziging.
- WCAG 2 vs APCA: wanneer welke
- WCAG 2.x (huidige standaard) berekent een symmetrische contrastratio uit relatieve luminantie: `(L1 + 0,05) / (L2 + 0,05)`, target 4,5:1 voor normale lopende tekst en 7:1 voor AAA. Dat is de wettelijke compliance-ondergrens voor toegankelijkheidsaudits in 2026. APCA (Accessible Perceptual Contrast Algorithm) is de voorgestelde WCAG 3-opvolger — polariteit-gevoelig (licht-op-donker scoort anders dan donker-op-licht), beter gecorreleerd met door mensen ervaren leesbaarheid, target `|Lc| ≥ 75` voor lopende tekst. Beide metrieken in één rij laten een designer WCAG 2 halen voor compliance en APCA voor real-world leesbaarheid zonder tussen twee aparte calculators te hoeven springen.
Aanbevolen aanpak voor kleurconversie
- Prefereer OKLCH voor design-system-tokens; HEX voor legacy
- Voor elk nieuw design system dat in 2025 of later shipt, definieer merkkleuren en palet-ramps in OKLCH. De L-as geeft automatisch perceptueel-gelijke ramps; de Chroma-as kan wide-gamut-kleuren adresseren die hex niet kan coderen. Houd een hex-fallback voor oudere browsers via `@supports not (color: oklch(0 0 0))` of build-time-PostCSS, maar maak OKLCH de canonieke waarde in je tokenopslag. Legacy-systemen met duizenden bestaande hex-variabelen kunnen op hex blijven tot een geplande migratie — churn niet om het churnen.
- Behandel CMYK-uitvoer als benadering, bevestig bij de drukker
- De CMYK-getallen die deze tool oppervlakt zijn een naïeve sRGB-gebaseerde formule, geen ICC-profiel-conversie. Gebruik ze voor offertes en interne comps. Stuur vóór elke echte printrun de originele hex (niet de CMYK-benadering) naar de drukker en laat hem zijn eigen ICC-conversie draaien tegen de specifieke pers, inkt en papier. De 5-15% channel-shift van een goede conversie kan makkelijk een scherp rood in een vies oranje veranderen als de benadering direct wordt geshipt.
- Gebruik APCA Lc voor toekomstgerichte toegankelijkheid
- WCAG 2.x blijft nog enkele jaren de regelgevende ondergrens, maar APCA is de richting waarin de standaard beweegt. Haal voor nieuwe ontwerpen `|Lc| ≥ 75` voor lopende tekst en `|Lc| ≥ 60` voor grote tekst naast de WCAG 2.1-ondergrenzen. APCA vangt leesbaarheidsproblemen op die WCAG 2's symmetrische ratio mist — vooral dunne-streek-tekst op heldere achtergronden, waar de WCAG-ratio er goed uitziet maar de tekst feitelijk verdwijnt op normale leesafstand.
- Draai wide-gamut-kleuren door de Display P3 gamut-check
- Als je moderne Apple-hardware (iPhone, iPad, MacBook vanaf 2017) target of HDR-bewuste content shipt, definieer dan merkkleuren in OKLCH en gebruik de Display P3-badge om te verifiëren dat ze in P3 passen, zelfs als ze sRGB overschrijden. De wider-gamut-kleuren ogen merkbaar verzadigder op P3-displays en degraderen netjes via browser-toegepaste chroma-compressie op sRGB-only-schermen. Pre-snap niet naar sRGB tenzij je weet dat je hele publiek op legacy-displays zit.
- Kies perceptueel uniforme schaduwen via OKLCH-tonen
- Wanneer je een 50/100/200/.../900-ramp voor een merkkleur genereert, gebruik dan het Tones-paneel: het verzet L in gelijke stappen met vaste C en H. Het resultaat is een perceptueel-gelijkmatige ramp waar de visuele afstand tussen 400 en 500 identiek oogt aan die tussen 500 en 600. Met de hand HSL-ramps tunen voor dezelfde gelijkmatigheid is een oefening van meerdere uren per kleur; OKLCH geeft het gratis.
- Gebruik de Eyedropper spaarzaam voor cross-tab kleurmatching
- De EyeDropper-API (alleen Chromium per 2026) laat je ergens op het scherm klikken — ook buiten de browser — om de kleur van die pixel te samplen. Handig voor het matchen van een kleur uit een screenshot, een videoframe of de UI van een andere app. Behandel het resultaat als startpunt, niet als eindwaarde — schermweergave past kleurmanagement toe dat kan afwijken van het bronbestand. Voor canonieke merkkleuren: haal de hex altijd uit de designbron (Figma, Sketch, het merkrichtlijnen-PDF) in plaats van eyedropperen van een screenshot.
- Bookmark URL's met `#hex=...` voor deelbare paletbeslissingen
- De huidige kleur codeert automatisch in de URL-hash als `#hex=...` of `#oklch=...`. Kopieer de URL, plak in een Slack-thread of een GitHub-issue, en iedereen die hem opent landt op exact dezelfde kleur. Handig voor design-review-threads waarin "het merkblauw" één specifiek OKLCH-triple moet betekenen. De hash werkt bij op elke wijziging, dus de URL in je adresbalk is altijd de live huidige kleur — bookmark 'm om later naar een specifiek palet terug te keren.
Veelgestelde vragen
Hoe converteer ik een hexcode naar RGB?
Is hex hetzelfde als RGB?
Hoe lees je een hex-kleurcode?
Wat is de formule voor hex naar RGB?
Waarom hex gebruiken in plaats van RGB?
Kunnen hex-codes alpha / transparantie bevatten?
Hoeveel kleuren kan hex weergeven?
Wat is een OKLCH-kleur?
Is OKLCH beter dan HSL?
Welke browsers ondersteunen oklch()?
Waarom OKLCH gebruiken in Tailwind v4?
Is OKLCH perceptueel uniform?
Hoe lees je een OKLCH-waarde?
Wat is het verschil tussen gamut en kleurruimte?
Waarom valt mijn OKLCH-kleur buiten het sRGB-gamut?
Moet ik WCAG 2 of APCA voor contrast gebruiken?
Wat is het verschil tussen HSV en HWB?
Gerelateerde tools
Alle tools bekijken →Talstelsel omrekenen — online converter
Omrekentools
Reken je getal direct om tussen binair, hex, decimaal, octaal en elk talstelsel (2-36). Gratis en privé — alles draait in je browser.
Hex naar CMYK converter
Omrekentools
Converteer HEX-kleuren naar CMYK in je browser. Naïeve sRGB-gebaseerde benadering voor printvoorbeelden. Gratis, geen account, je kleuren blijven lokaal.
Hex naar HSL converter
Omrekentools
Converteer elke hex-kleur naar HSL in je browser — 3-cijferig, 6-cijferig en 8-cijferig hex met alpha worden allemaal ondersteund. Gratis, direct, geen account, je kleuren verlaten de pagina nooit.
Hex naar OKLCH converter
Omrekentools
Converteer HEX naar OKLCH voor Tailwind v4 design-tokens. Live perceptueel-uniforme uitvoer met Display P3 gamut-waarschuwingen. Gratis, alleen in je browser.
Hex naar RGB converter
Omrekentools
Converteer elke hex-kleurcode naar RGB in je browser — 3-cijferig, 6-cijferig en 8-cijferig hex met alpha worden allemaal ondersteund. Gratis, direct, geen account, je kleuren verlaten de pagina nooit.
Afbeelding comprimeren — online tool
Omrekentools
Comprimeer JPEG, PNG & WebP tot 80% kleiner — in je browser, zonder uploaden. Batch 20 afbeeldingen, stel kwaliteit in, vergelijk voor & na. Gratis & privé.