Selector de color fácil de usar con pantalla de espectro interactiva y control deslizante de brillo. Selecciona colores visualmente o ingresa valores exactos en formatos RGB, Hex o CMYK. Copia códigos de color con un clic para tus proyectos de diseño.
La Herramienta de Selector de Color es una aplicación intuitiva y fácil de usar diseñada para ayudar a los usuarios a seleccionar, visualizar y convertir colores en múltiples formatos de color. Ya seas un diseñador web creando un esquema de color, un artista digital buscando el tono perfecto, o un desarrollador implementando una interfaz de usuario, este selector de color proporciona una forma sencilla de trabajar con colores en formatos RGB, Hexadecimal, CMYK y HSV. Con su espectro de color interactivo, control deslizante de brillo y opciones de entrada precisas, puedes encontrar, ajustar y copiar rápidamente los valores de color para tus proyectos.
Antes de sumergirse en cómo usar el selector de color, es útil entender los diferentes modelos de color que soporta:
RGB es un modelo de color aditivo donde la luz roja, verde y azul se combinan de varias maneras para reproducir una amplia gama de colores. En aplicaciones digitales:
El modelo RGB está directamente relacionado con cómo se muestran los colores en las pantallas, lo que lo convierte en la opción principal para el diseño digital.
Los códigos de color hexadecimal son una forma de representar colores RGB utilizando un sistema de numeración base-16:
Los códigos hex son ampliamente utilizados en el desarrollo web (CSS, HTML) y aplicaciones de diseño digital.
CMYK es un modelo de color sustractivo utilizado principalmente en la impresión a color:
Aunque se utiliza principalmente para impresión, entender los valores CMYK puede ser útil al diseñar contenido que eventualmente se imprimirá.
HSV representa colores en términos de:
HSV es particularmente útil para la selección de colores, ya que separa la elección del color (tono) de su intensidad (saturación) y brillo (valor), lo que facilita más intuitivamente ajustar colores.
El selector de color convierte automáticamente entre diferentes modelos de color utilizando estas fórmulas matemáticas:
Para convertir RGB a hexadecimal:
Donde toHex()
convierte un número decimal a su representación hexadecimal.
La conversión de RGB a CMYK implica estos pasos:
Convertir RGB a HSV:
Para el Tono (H):
undefined1// Conversión de RGB a Hex
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// Conversión de Hex a RGB
12function hexToRgb(hex) {
13 // Eliminar # si está presente
14 const cleanHex = hex.startsWith('#') ? hex.slice(1) : hex;
15
16 // Manejar hex de 3 y 6 dígitos
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// Conversión de RGB a CMYK
29function rgbToCmyk(r, g, b) {
30 // Normalizar valores RGB
31 const normalizedR = r / 255;
32 const normalizedG = g / 255;
33 const normalizedB = b / 255;
34
35 // Calcular K (negro)
36 const k = 1 - Math.max(normalizedR, normalizedG, normalizedB);
37
38 // Manejar negro puro
39 if (k === 1) {
40 return { c: 0, m: 0, y: 0, k: 100 };
41 }
42
43 // Calcular 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// Ejemplo de uso
57const rgb = { r: 255, g: 0, b: 0 }; // Rojo puro
58console.log(`Hex: ${rgbToHex(rgb.r, rgb.g, rgb.b)}`);
59console.log(`CMYK:`, rgbToCmyk(rgb.r, rgb.g, rgb.b));
60
1# Conversión de RGB a Hex
2def rgb_to_hex(r, g, b):
3 return f'#{r:02x}{g:02x}{b:02x}'
4
5# Conversión de Hex a RGB
6def hex_to_rgb(hex_color):
7 # Eliminar # si está presente
8 hex_color = hex_color.lstrip('#')
9
10 # Manejar hex de 3 y 6 dígitos
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# Conversión de RGB a CMYK
21def rgb_to_cmyk(r, g, b):
22 # Normalizar valores RGB
23 r_norm = r / 255
24 g_norm = g / 255
25 b_norm = b / 255
26
27 # Calcular K (negro)
28 k = 1 - max(r_norm, g_norm, b_norm)
29
30 # Manejar negro puro
31 if k == 1:
32 return {'c': 0, 'm': 0, 'y': 0, 'k': 100}
33
34 # Calcular 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# Ejemplo de uso
47rgb = {'r': 0, 'g': 128, 'b': 255} # Azul cielo
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 // Conversión de RGB a Hex
3 public static String rgbToHex(int r, int g, int b) {
4 return String.format("#%02x%02x%02x", r, g, b);
5 }
6
7 // Conversión de Hex a RGB
8 public static int[] hexToRgb(String hexColor) {
9 // Eliminar # si está presente
10 if (hexColor.startsWith("#")) {
11 hexColor = hexColor.substring(1);
12 }
13
14 // Manejar hex de 3 y 6 dígitos
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 // Conversión de RGB a CMYK
31 public static double[] rgbToCmyk(int r, int g, int b) {
32 // Normalizar valores RGB
33 double normalizedR = r / 255.0;
34 double normalizedG = g / 255.0;
35 double normalizedB = b / 255.0;
36
37 // Calcular K (negro)
38 double k = 1 - Math.max(Math.max(normalizedR, normalizedG), normalizedB);
39
40 // Manejar negro puro
41 if (k == 1) {
42 return new double[]{0, 0, 0, 100};
43 }
44
45 // Calcular 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 // Ejemplo de uso
60 int r = 75, g = 0, b = 130; // Púrpura
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). Gráficos por Computadora y Modelado Geométrico: Implementación y Algoritmos. Springer Science & Business Media.
Adobe Systems. (2000). Codificación de Imagen de Color Adobe RGB (1998). Adobe Systems Incorporated.
Fairchild, M. D. (2013). Modelos de Apariencia del Color. John Wiley & Sons.
Hunt, R. W. G., & Pointer, M. R. (2011). Midiendo Color. John Wiley & Sons.
Poynton, C. (2012). Video Digital y HD: Algoritmos e Interfaces. Elsevier.
W3C. (2018). Módulo de Color CSS Nivel 4. Borrador de Trabajo del W3C. Recuperado de https://www.w3.org/TR/css-color-4/
Pautas de Accesibilidad para el Contenido Web (WCAG) 2.1. (2018). Recuperado de https://www.w3.org/TR/WCAG21/
Consorcio Internacional del Color. (2004). Especificación ICC.1:2004-10 (Versión del Perfil 4.2.0.0). Recuperado de http://www.color.org/specification/ICC1v42_2006-05.pdf
¿Listo para encontrar el color perfecto para tu proyecto? Nuestra herramienta de selector de color fácil de usar facilita la selección, ajuste y conversión de colores entre diferentes formatos. Ya sea que estés diseñando un sitio web, creando arte digital o planificando materiales impresos, nuestra herramienta proporciona la precisión y flexibilidad que necesitas.
¡Comienza a experimentar con colores ahora y lleva tus diseños al siguiente nivel!
Descubre más herramientas que podrían ser útiles para tu flujo de trabajo