De la a la , de los a la , a . Compatibles con CSS, sombreadores, WASM y tablas de conversión de color (LUT).
Pantalla y web19
Espacios RGB de trabajo y entrega, del estándar web a gamas de pantalla más amplias.
HP & Microsoft,1996
RGBApple,2015
RGBITU-R,2012
RGB
HP & Microsoft,1996
RGBITU-R,1990
RGBKodak,1999
RGBAdobe Systems,1998
RGBDCI,2005
RGBApple,2015
RGBITU-R,2012
RGBAdobe Systems,1998
RGBKodak,1999
RGBIEC,2003
RGBKodak,2000
RGBCIE,1931
RGBFCC,1953–87
RGBWalter Bruch / Telefunken,1967
RGBApple Computer,1987–96
RGBSMPTE,1988–90
RGB
Variantes de RGB9
Controles de matiz, saturación y brillo construidos sobre RGB. Pasos iguales no tienen por qué verse iguales.
Joblove & Greenberg,1978
HSLAlvy Ray Smith,1978
HSVAlvy Ray Smith,1996
HWB
John R. Kender,1976
HSIcommunity convention,2011
HCGIan Taylor,2012
HCLDarel Rex Finley,2006
HSPKuzma Shapran,2012
HCYBianconi et al.,2009
HSM
Perceptuales48
Coordenadas para comparar colores, crear paletas y predecir la apariencia.
Björn Ottosson,2020
LCHCIE,1976
LabLi et al.,2017
JMh
Björn Ottosson,2020
LabGoogle,2021
HCTBjörn Ottosson,2021
HSLBjörn Ottosson,2021
HSVBjörn Ottosson,2021
HWBBjörn Ottosson,2021
LabBjörn Ottosson,2021
LCHJan Behrens,2009
LabKonovalenko et al.,2021
LabLi & Luo,2024
IabHensley & Fairchild,2020
IgPgTgSafdar et al.,2017
JzazbzSafdar et al.,2017
JzCzHzFritz Ebner & Mark Fairchild,1998
IPTSafdar et al.,2017
IzazbzMark Fairchild & Garrett Wyble,2010
IPTCIE,1976
LCHCIE,1976
LUVAlexei Boronine,2012
HSLCIE,1976
LCHCIE,1976
LabCIE,1976
LCHAlexei Boronine,2012
HSLDIN,2018
LabDIN,2018
LCHCui et al.,2002
LabRichard S. Hunter,1948
LabDavid MacAdam / CIE,1960–76
UVWGünther Wyszecki / CIE,1964–76
UVWElliot Q. Adams,1942–76
LabMark Fairchild & Garrett Wyble,2010–16
LabCIE,2002–17
JMhLi et al.,2017
JabSafdar et al.,2021
JMhLuo et al.,2006–17
JabLi et al.,2017
JabLi et al.,2017
JabLuo et al.,2006–17
JabLuo et al.,2006–17
JabLuke Hellwig & Mark Fairchild,2022
JMhMark Fairchild,1996
LabLuo et al.,1996
LABYoshinobu Nayatani,1995
LChRobert W. G. Hunt,1994
JChSherman Lee Guth,1995
ATD
Colorimetría e investigación22
Los fundamentos de la medición, el ojo y coordenadas de investigación especializadas.
CIE,1931
XYZCIE,1931
xyYEstévez et al.,1979
LMS
ICC,1994
XYZCIE,1976
uvYYoshi Ohno / ANSI,2014
TDuRaymond Davis; CIE,1931
TJames Clerk Maxwell,1860
xyCIE,1931
wlITU-R,2016
XaYaZaDonald MacLeod & Robert Boynton,1979
lsYDerrington et al.,1984
LuRGYVCIE,1931
YHermann von Helmholtz,1860
dsYJames Clerk Maxwell,1860
rgRichard Kirk,2019
YrgJyrki Alakuijala et al.,2019
XYBOSA committee,1974
LjgTerrillon & Akamatsu,2000
TSLXerox,1989
YESOhta et al.,1980
I1I2I3Ruderman et al.,1998
lαβ
Vídeo y radiodifusión20
Separan el brillo del color para la radiodifusión, la compresión y la entrega HDR.
ITU-R,1990
YCbCrDolby,2016
ICtCpITU-R,2012
YCbCr
ITU-R,1982
YCbCrITU-R,1982
YCbCrITU-R,1982
YCbCrWalter Bruch / Telefunken,1967
YUVNTSC,1953–82
YIQITU-R,1982
YPbPrMalvar & Sullivan,2003
YCgCoEric Hamilton / C-Cube Microsystems,1992
YCbCrHenri de France,1967
YDbDrITU-R,2012
YcCbCrSony / IEC,2006
YCbCrSMPTE,1987
RGBKodak,1992
YcC1C2Dolby / ITU-R,2016
RGBBBC & NHK / ITU-R,2016
RGBITU-R,2016
RGBJulian Fröhlich,2017
ICaCb
Cine y cámara43
Codificaciones log de cámara y espacios de trabajo para capturar la luz y etalonarla.
Academy,2014
RGBARRI,2010–22
RGBAcademy,2014
RGB
Sony,2014
RGBSony,2014
RGBAcademy,2012
RGBAcademy,2016
RGBARRI,2022
RGBKodak,1992
RGBBlackmagic Design,2020
RGBSony,2012–14
RGBPanasonic,2014
RGBRED Digital Cinema,2017
RGBCanon,2011–15
RGBCanon,2015
RGBCanon,2016
RGBFujifilm,2016
RGBFujifilm,2022
RGBFujifilm,2024
RGBNikon,2018
RGBApple,2023
RGBApple,2025
RGBBlackmagic Design,2020
RGBDJI,2017
RGBFilmLight,2013
RGBKinefinity,2025
RGBSMPTE/DCI,2006
XYZSony,2008–12
RGBAcademy,2013
RGBKodak,2000
RGBLeica,2020
RGBGoPro,2012
RGBGoPro,2026
RGBInsta360,2026
RGBXiaomi,2024
RGBOPPO,2025
RGBSamsung,2025
RGBRED Digital Cinema,2007–08
RGBRED Digital Cinema,2008–17
RGBRED Digital Cinema,2016–17
RGBPanavision / Sony,2005
RGBThomson Grass Valley,2002
RGBFiLMiC Inc.,2017
RGB
Impresión y pintura7
Tinta, pintura y la organización medida de los colores de superficie.
Eagle Printing Ink Co.,1906
CMYKAlbert H. Munsell,1905
HVCJohannes Itten,1961
RYB
Louis Ducos du Hauron,1868–1906
CMYRAL gGmbH,1993
HLCAntal Nemcsics,1980
ATVWilhelm Ostwald,1917
hWB
Úsalo
Un paquete de JavaScript para convertir colores. Importa un espacio de menos de 1,5 kB, o todos para convertir entre cualquier par de espacios. Las mismas conversiones procesan imágenes completas con WASM, se ejecutan en sombreadores GLSL o WGSL y se pueden exportar como tablas LUT o perfiles ICC. Los agentes pueden invocarlas a través del servidor MCP.
Probado con referenciaspruebas para cada espacio
En ambos sentidosde cualquier espacio a cualquier otro
import space from 'color-space'
space.rgb.oklch(255, 128, 0) // → [0.732, 0.186, 53]
space.oklch.rgb(0.65, 0.25, 180) // any of 168 × 167 pairs
space.oklch.name // 'oklch'
space.oklch.range // [[0,1], [0,0.4], [0,360]]// one space only – tree-shaken, 0.4-1.5 kBimport oklch from 'color-space/oklch.js'
oklch.rgb(0.65, 0.25, 180)
// values in the notations CSS already speaks – straight from the library
color: oklch(0.732 0.186 53); // space.rgb.oklch(255, 128, 0)
color: color(display-p3 0.936 0.529 0.199); // space.rgb.p3(255, 128, 0)
color: color(xyz-d65 0.49 0.367 0.045); // space.rgb.xyz(…) / 100 – exact interchange// spaces CSS lacks ship as ICC profiles or LUTs – see those tabs;
// every dossier's css tab writes the current color in copyable forms
// per-space metadata – sourced, ships as data.jsonimport data from 'color-space/data.json' with { type: 'json' }
const m = data.spaces.oklch
m.channels // [{symbol, min, max, name}, …]
m.refs // defining spec / paper links
m.year, m.by // 2020, 'Björn Ottosson'
// scalar or whole-buffer, zero-copy – a true WASM kernelimport space, { alloc } from 'color-space/wasm'
space.oklch.rgb(0.72, 0.16, 41) // → [246, 125, 79]const buf = alloc(n) // n×3 Float64Array
space.rgb.oklch(buf) // in place – 27 spaces
// every pair as a GLSL shader chunkimport { glsl } from 'color-space/gl'
import oklch from 'color-space/gl/oklch'
const src = glsl(oklch, 'rgb')
// → self-contained: vec3 oklch_rgb(vec3 c)// paste into any fragment shader, no uniforms
Cualquier espacio como perfil .icc v2 – matriz + curva tonal para los espacios de trabajo RGB (Photoshop, gestión del color del sistema operativo) y una retícula CLUT para todo lo demás (lcms, ArgyllCMS, ImageMagick).
…
// an MCP server – convert · gamut · css · space · spaces · cube –
// so an agent calls verified conversions instead of guessing them
npx -y color-space mcp
// Claude Code
claude mcp add color-space -- npx -y color-space mcp
// VS Code
code --add-mcp '{"name":"color-space","command":"npx","args":["-y","color-space","mcp"]}'
// Claude Desktop · Cursor · .mcp.json
{ "mcpServers": { "color-space": { "command": "npx", "args": ["-y", "color-space", "mcp"] } } }
¿Qué es un espacio de color?
Un sistema de coordenadas para el color: ejes, rangos y una regla que vincula los números con luz medible. El mismo naranja es rgb(255 128 0), oklch(0.732 0.186 53) y, en XYZ, [49, 36.7, 4.5] – el mismo color, escrito de tres maneras. Una paleta es un puñado de colores elegidos; un espacio es una forma de anotar cualquier color.
Modelo de color o espacio de color: ¿en qué se diferencian?
Un modelo de color define las componentes con las que se describe un color: tres primarios en RGB, matiz, saturación y claridad en HSL, y cuatro tintas en CMYK. Un espacio de color especifica además los primarios, el punto blanco y la curva de codificación, de modo que cada conjunto de valores corresponda a un color medible. Por eso rgb(255 0 0) describe rojos distintos en sRGB, Display P3 y Adobe RGB: un modelo, tres espacios.
En el uso habitual, ambos se llaman espacios, también en color-mix(in hsl, …) de CSS y en este catálogo. Un modelo puede tomar como referencia un espacio ya definido: aquí HSL y HSV se basan en sRGB, como en CSS.
¿Qué espacio debería usar realmente?
Depende de la tarea:
almacenar y compartir imágenes – sRGB, el estándar por defecto de la web;
diseñar paletas y degradados – OKLCH, donde pasos iguales se ven iguales;
grabar y etalonar vídeo – el espacio log de la cámara, con entrega en Rec. 709 o Rec. 2100;
medir cuán distintos se ven dos colores – CIELAB o DIN99o.
Agrupar el catálogo por uso lo ordena de la misma manera.
¿Qué debería usar en lugar de HSL?
OKLCH. Mantiene los mismos tres controles – matiz, croma, claridad –, pero su claridad es fiable: en HSL, el amarillo a L=50 emite unas 13 veces más luz que el azul a L=50, así que la misma L no significa el mismo brillo. En OKLCH, sí. CSS admite oklch() de forma nativa.
¿Por qué mis degradados se enturbian en el centro?
Porque se calculan en sRGB codificado con gamma, donde promediar los números de dos colores produce una luz más oscura y apagada que la que daría mezclar realmente su luz. Interpolar en OKLab lo evita. La fila interpolar de cada dosier traza la misma mezcla en dos espacios, uno junto al otro, para ver la diferencia antes de elegir.
¿Qué significa «fuera de gama»?
Un color que un espacio puede describir pero que otro – o la pantalla – no puede mostrar. Un verde intenso de Display P3 simplemente no existe en sRGB: al convertirlo, los números quedan fuera del rango válido. El atlas lo mantiene a la vista: la etiqueta junto al color actual indica la gama estándar más ajustada que lo contiene, y los tramos fuera de rango se ven atenuados sobre un damero.
¿Por qué la impresión se ve más apagada que la pantalla?
Una pantalla emite luz; el papel refleja lo que sus tintas no absorben. La tinta sobre papel alcanza menos colores vivos – los azules, verdes y rojos RGB saturados quedan fuera de su gama – así que se imprimen más apagados. La preimpresión convierte mediante un perfil ICC hecho para la prensa y el papel, como FOGRA39 para el estucado europeo o GRACoL en EE. UU. El CMYK de este catálogo es la fórmula simple que CSS usa para device-cmyk() sin perfil: correcta para los números, no una prueba de la impresión.
¿Son exactas las conversiones? ¿Se pierden datos en un viaje de ida y vuelta?
Las conversiones son fórmulas cerradas, no aproximaciones por tabla, y los viajes de ida y vuelta regresan dentro del ruido de coma flotante. Las pocas excepciones están documentadas donde ocurren: OSA-UCS no tiene inversa cerrada, los sistemas de atlas como Munsell interpolan entre los grados publicados y la salida rgb se limita a la gama sRGB – para obtener valores fuera de ella, conviene pasar por XYZ o por RGB lineal.
Además están verificadas: cada espacio enlaza el artículo o la especificación que implementa, los valores se prueban contra colorjs.io donde ambos coinciden, y los logs de cámara contra las transformaciones ACES oficiales de la Academia. formula-verification.md registra qué se comprobó contra qué – incluidos algunos lugares donde los propios artículos publicados tenían errores.
Si los números difieren de los de otra biblioteca, compara los rangos: esta conserva los rangos convencionales de cada espacio – RGB 0–255, claridad Lab 0–100, matiz 0–360 – donde muchas lo aplanan todo a 0–1. Cada tarjeta muestra sus rangos; en código son space.oklch.range.
¿Cuáles de estos puede escribir CSS?
De forma nativa, rgb(), hsl(), hwb(), lab(), lch(), oklab() y oklch(), más color() para Display P3, Adobe RGB, ProPhoto, sRGB lineal y XYZ (D65 y D50). El rec2020 de CSS es una gamma 2.4 pura, no la curva BT.2020 del Rec. 2020 de este catálogo – los mismos números nombrarían otro color. La pestaña css de cada dosier escribe el color actual en forma copiable; los espacios que CSS no tiene se ofrecen en su lugar como perfiles ICC o LUT.
¿Dónde están Pantone, NCS y RAL?
Son productos con licencia: sus colores se definen mediante datos que venden sus propietarios, no mediante fórmulas publicadas – así que no hay matemáticas abiertas que implementar, y redistribuir sus tablas no sería legal. Aquí están parientes cercanos cuyas matemáticas son públicas: Munsell (su renotación de 1943 es de acceso público) y RAL Design (definido directamente en CIELAB). La regla general: si las matemáticas se publicaron alguna vez, tienen su lugar en la colección.
BibTeX
@software{Ivanov_color-space_2026,
author = {Ivanov, Dmitry},
license = {CC0-1.0},
month = oct,
title = {{color-space}},
url = {https://github.com/colorjs/color-space},
version = {3.2.0},
year = {2026}
}
APA
Ivanov, D. (2026). color-space (Version 3.2.0) [Computer software]. https://github.com/colorjs/color-space
Copiado
Suelta la imagen para ver sus colores en todas las franjas y planos