Gebruiksvriendelijke kleurenkiezer met interactieve spectrumweergave en helderheidsschuif. Selecteer kleuren visueel of voer exacte waarden in RGB, Hex of CMYK-indelingen in. Kopieer kleurcodes met één klik voor je ontwerpprojecten.
De Kleurkiezer is een intuïtieve, gebruiksvriendelijke applicatie die is ontworpen om gebruikers te helpen kleuren te selecteren, visualiseren en converteren tussen meerdere kleurformaten. Of je nu een webontwerper bent die een kleurenpalet maakt, een digitale kunstenaar die de perfecte tint zoekt, of een ontwikkelaar die een gebruikersinterface implementeert, deze kleurkiezer biedt een eenvoudige manier om met kleuren te werken in RGB, Hexadecimaal, CMYK en HSV-formaten. Met zijn interactieve kleurspectrum, helderheidsschuifregelaar en nauwkeurige invoermogelijkheden kun je snel kleurwaarden vinden, aanpassen en kopiëren voor je projecten.
Voordat we ingaan op het gebruik van de kleurkiezer, is het handig om de verschillende kleurmodellen die het ondersteunt te begrijpen:
RGB is een additief kleurmodel waarbij rode, groene en blauwe lichten op verschillende manieren worden gecombineerd om een breed scala aan kleuren te reproduceren. In digitale toepassingen:
Het RGB-model is direct gerelateerd aan hoe kleuren op schermen worden weergegeven, waardoor het de primaire keuze is voor digitaal ontwerp.
Hexadecimale kleurcodes zijn een manier om RGB-kleuren weer te geven met behulp van een base-16 nummeringssysteem:
Hex-codes worden veel gebruikt in webontwikkeling (CSS, HTML) en digitale ontwerptoepassingen.
CMYK is een subtractief kleurmodel dat voornamelijk wordt gebruikt in kleurafdrukken:
Hoewel het voornamelijk voor print wordt gebruikt, kan het begrijpen van CMYK-waarden nuttig zijn bij het ontwerpen van inhoud die uiteindelijk wordt afgedrukt.
HSV vertegenwoordigt kleuren in termen van:
HSV is bijzonder nuttig voor kleurselectie omdat het kleurkeuze (hue) scheidt van de intensiteit (verzadiging) en helderheid (waarde), waardoor het intuïtiever wordt om kleuren aan te passen.
De kleurkiezer converteert automatisch tussen verschillende kleurmodellen met behulp van deze wiskundige formules:
Om RGB naar hexadecimaal te converteren:
Waar toHex()
een decimaal getal omzet naar zijn hexadecimale weergave.
De conversie van RGB naar CMYK omvat deze stappen:
Om RGB naar HSV te converteren:
Voor Hue (H):
undefined1// RGB naar Hex conversie
2function rgbToHex(r, g, b) {
3 const toHex = (c) => {
4 const hex = Math.round(c).toString(16);
5 return hex.length === 1 ? '0' + hex : hex;
6 };
7
8 return `#${toHex(r)}${toHex(g)}${toHex(b)}`;
9}
10
11// Hex naar RGB conversie
12function hexToRgb(hex) {
13 // Verwijder # als aanwezig
14 const cleanHex = hex.startsWith('#') ? hex.slice(1) : hex;
15
16 // Behandel zowel 3-cijferige als 6-cijferige hex
17 const expandedHex = cleanHex.length === 3
18 ? cleanHex.split('').map(char => char + char).join('')
19 : cleanHex;
20
21 const r = parseInt(expandedHex.substring(0, 2), 16);
22 const g = parseInt(expandedHex.substring(2, 4), 16);
23 const b = parseInt(expandedHex.substring(4, 6), 16);
24
25 return { r, g, b };
26}
27
28// RGB naar CMYK conversie
29function rgbToCmyk(r, g, b) {
30 // Normalizeer RGB-waarden
31 const normalizedR = r / 255;
32 const normalizedG = g / 255;
33 const normalizedB = b / 255;
34
35 // Bereken K (zwart)
36 const k = 1 - Math.max(normalizedR, normalizedG, normalizedB);
37
38 // Behandel puur zwart
39 if (k === 1) {
40 return { c: 0, m: 0, y: 0, k: 100 };
41 }
42
43 // Bereken C, M, Y
44 const c = ((1 - normalizedR - k) / (1 - k)) * 100;
45 const m = ((1 - normalizedG - k) / (1 - k)) * 100;
46 const y = ((1 - normalizedB - k) / (1 - k)) * 100;
47
48 return {
49 c: Math.round(c),
50 m: Math.round(m),
51 y: Math.round(y),
52 k: Math.round(k * 100)
53 };
54}
55
56// Voorbeeldgebruik
57const rgb = { r: 255, g: 0, b: 0 }; // Puur rood
58console.log(`Hex: ${rgbToHex(rgb.r, rgb.g, rgb.b)}`);
59console.log(`CMYK:`, rgbToCmyk(rgb.r, rgb.g, rgb.b));
60
1# RGB naar Hex conversie
2def rgb_to_hex(r, g, b):
3 return f'#{r:02x}{g:02x}{b:02x}'
4
5# Hex naar RGB conversie
6def hex_to_rgb(hex_color):
7 # Verwijder # als aanwezig
8 hex_color = hex_color.lstrip('#')
9
10 # Behandel zowel 3-cijferige als 6-cijferige hex
11 if len(hex_color) == 3:
12 hex_color = ''.join([c*2 for c in hex_color])
13
14 return {
15 'r': int(hex_color[0:2], 16),
16 'g': int(hex_color[2:4], 16),
17 'b': int(hex_color[4:6], 16)
18 }
19
20# RGB naar CMYK conversie
21def rgb_to_cmyk(r, g, b):
22 # Normalizeer RGB-waarden
23 r_norm = r / 255
24 g_norm = g / 255
25 b_norm = b / 255
26
27 # Bereken K (zwart)
28 k = 1 - max(r_norm, g_norm, b_norm)
29
30 # Behandel puur zwart
31 if k == 1:
32 return {'c': 0, 'm': 0, 'y': 0, 'k': 100}
33
34 # Bereken C, M, Y
35 c = ((1 - r_norm - k) / (1 - k)) * 100
36 m = ((1 - g_norm - k) / (1 - k)) * 100
37 y = ((1 - b_norm - k) / (1 - k)) * 100
38
39 return {
40 'c': round(c),
41 'm': round(m),
42 'y': round(y),
43 'k': round(k * 100)
44 }
45
46# Voorbeeldgebruik
47rgb = {'r': 0, 'g': 128, 'b': 255} # Luchtblauw
48hex_color = rgb_to_hex(rgb['r'], rgb['g'], rgb['b'])
49cmyk = rgb_to_cmyk(rgb['r'], rgb['g'], rgb['b'])
50
51print(f"Hex: {hex_color}")
52print(f"CMYK: C={cmyk['c']}%, M={cmyk['m']}%, Y={cmyk['y']}%, K={cmyk['k']}%")
53
1public class ColorConverter {
2 // RGB naar Hex conversie
3 public static String rgbToHex(int r, int g, int b) {
4 return String.format("#%02x%02x%02x", r, g, b);
5 }
6
7 // Hex naar RGB conversie
8 public static int[] hexToRgb(String hexColor) {
9 // Verwijder # als aanwezig
10 if (hexColor.startsWith("#")) {
11 hexColor = hexColor.substring(1);
12 }
13
14 // Behandel zowel 3-cijferige als 6-cijferige hex
15 if (hexColor.length() == 3) {
16 String expandedHex = "";
17 for (char c : hexColor.toCharArray()) {
18 expandedHex += c + String.valueOf(c);
19 }
20 hexColor = expandedHex;
21 }
22
23 int r = Integer.parseInt(hexColor.substring(0, 2), 16);
24 int g = Integer.parseInt(hexColor.substring(2, 4), 16);
25 int b = Integer.parseInt(hexColor.substring(4, 6), 16);
26
27 return new int[]{r, g, b};
28 }
29
30 // RGB naar CMYK conversie
31 public static double[] rgbToCmyk(int r, int g, int b) {
32 // Normalizeer RGB-waarden
33 double normalizedR = r / 255.0;
34 double normalizedG = g / 255.0;
35 double normalizedB = b / 255.0;
36
37 // Bereken K (zwart)
38 double k = 1 - Math.max(Math.max(normalizedR, normalizedG), normalizedB);
39
40 // Behandel puur zwart
41 if (k == 1) {
42 return new double[]{0, 0, 0, 100};
43 }
44
45 // Bereken C, M, Y
46 double c = ((1 - normalizedR - k) / (1 - k)) * 100;
47 double m = ((1 - normalizedG - k) / (1 - k)) * 100;
48 double y = ((1 - normalizedB - k) / (1 - k)) * 100;
49
50 return new double[]{
51 Math.round(c),
52 Math.round(m),
53 Math.round(y),
54 Math.round(k * 100)
55 };
56 }
57
58 public static void main(String[] args) {
59 // Voorbeeldgebruik
60 int r = 75, g = 0, b = 130; // Paars
61 String hexColor = rgbToHex(r, g, b);
62 double[] cmyk = rgbToCmyk(r, g, b);
63
64 System.out.println("Hex: " + hexColor);
65 System.out.printf("CMYK: C=%.0f%%, M=%.0f%%, Y=%.0f%%, K=%.0f%%\n",
66 cmyk[0], cmyk[1], cmyk[2], cmyk[3]);
67 }
68}
69
Agoston, M. K. (2013). Computer Graphics and Geometric Modeling: Implementation and Algorithms. Springer Science & Business Media.
Adobe Systems. (2000). Adobe RGB (1998) Color Image Encoding. Adobe Systems Incorporated.
Fairchild, M. D. (2013). Color Appearance Models. John Wiley & Sons.
Hunt, R. W. G., & Pointer, M. R. (2011). Measuring Colour. John Wiley & Sons.
Poynton, C. (2012). Digital Video and HD: Algorithms and Interfaces. Elsevier.
W3C. (2018). CSS Color Module Level 4. W3C Working Draft. Geraadpleegd van https://www.w3.org/TR/css-color-4/
Web Content Accessibility Guidelines (WCAG) 2.1. (2018). Geraadpleegd van https://www.w3.org/TR/WCAG21/
International Color Consortium. (2004). Specification ICC.1:2004-10 (Profile version 4.2.0.0). Geraadpleegd van http://www.color.org/specification/ICC1v42_2006-05.pdf
Klaar om de perfecte kleur voor je project te vinden? Onze gebruiksvriendelijke kleurkiezer maakt het gemakkelijk om kleuren te selecteren, aan te passen en te converteren tussen verschillende formaten. Of je nu een website ontwerpt, digitale kunst maakt of printmaterialen plant, onze tool biedt de precisie en flexibiliteit die je nodig hebt.
Begin nu met experimenteren met kleuren en til je ontwerpen naar een hoger niveau!
Ontdek meer tools die handig kunnen zijn voor uw workflow