ForHosting KIT · Utilidades de desarrollo

Matriz de contraste de colores

Una paleta puede parecer coherente y aun así contener combinaciones que dificultan o impiden leer el texto.

● BetaGratis · en su navegador
Úselo desde WebAPIEmailTelegramApp pronto

Esta matriz calcula la luminancia relativa WCAG 2 de cada color hexadecimal proporcionado, compara todos los colores entre sí y devuelve los resultados en una matriz cuadrada estable. Diseñadores, desarrolladores y especialistas en accesibilidad pueden revisar de una vez toda la paleta de un sistema de diseño, sin comprobar cada par por separado. Las entradas se validan, los colores se normalizan y el resultado determinista sirve para auditorías automatizadas e informes versionados.

Interprete la matriz sin perder de vista los colores

Envíe una matriz de entre dos y cien colores hexadecimales. Se aceptan formatos de tres y seis dígitos, con almohadilla inicial o sin ella, y cada valor válido se normaliza como un código de seis dígitos en minúsculas. La respuesta enumera esos colores normalizados en el mismo orden y asigna un índice a cada uno. Las filas y columnas conservan exactamente ese orden; por ello, el valor de la fila dos y la columna cinco representa el contraste entre los colores con índices dos y cinco. La diagonal siempre vale 1, pues un color no contrasta consigo mismo, y la matriz es simétrica porque invertir primer plano y fondo no altera la relación WCAG. Cada relación se redondea a dos decimales para ofrecer una salida legible y estable, mientras que las luminancias se redondean a seis. Los colores duplicados se conservan como posiciones independientes, algo útil al auditar tokens con igual valor y distintas funciones semánticas. Así, la respuesta puede representarse en una tabla, archivarse o compararse entre versiones con facilidad.

Comprenda el cálculo y los umbrales WCAG

El cálculo aplica el método de luminancia relativa de WCAG 2 para colores sRGB. Cada canal rojo, verde y azul se convierte de su valor sRGB codificado a luz lineal y después se combina mediante los coeficientes estándar. Para cualquier par, se divide la luminancia más clara más 0.05 entre la más oscura más 0.05, lo que produce una relación de 1 a 21. La respuesta incluye los umbrales WCAG habituales: 4.5 para texto normal AA, 7 para texto normal AAA, 3 para texto grande AA y 4.5 para texto grande AAA. Compare cada celda con el umbral adecuado al contenido y a la tipografía reales. Una relación aislada no certifica toda una interfaz, pues también importan el tamaño y peso de la fuente, los estados interactivos, los elementos no textuales y el contexto de uso. La herramienta devuelve pruebas numéricas en vez de un veredicto general, para que cada auditoría aplique la regla correcta a cada combinación prevista sin confundir un valor redondeado con una garantía global.

Use resultados deterministas en auditorías de diseño

Una matriz completa resulta especialmente útil cuando la revisión de la paleta es repetible. Mantenga los colores en un orden documentado, por ejemplo neutros, marca, estados y acentos, y guarde la matriz con la versión del sistema de diseño. Una prueba de integración continua puede contrastar celdas seleccionadas con los umbrales exigidos, mientras una persona revisora examina la tabla completa para detectar combinaciones débiles inesperadas. Como el algoritmo no utiliza red, azar, hora actual, estilos del navegador ni estimaciones de perfiles de color, una entrada JSON idéntica genera una salida JSON idéntica. Se rechazan con un índice claro las matrices inválidas, las paletas fuera del tamaño admitido y los valores hexadecimales incorrectos. El límite de cien colores acota la matriz cuadrática a diez mil celdas. Resuelva la transparencia y la composición antes de usar esta capacidad: los colores alfa se rechazan porque su apariencia depende del fondo. Convierta también nombres, HSL, valores de gama amplia u objetos de herramientas de diseño a hex sRGB opaco para que la auditoría tenga una base explícita y reproducible.

Auditar tokens de diseño

Genere una matriz indexada para tokens de marca, superficie, texto, borde y estado antes de publicar una versión del sistema de diseño.

Comprobar migraciones de temas

Compare las matrices de las paletas anterior y nueva para localizar combinaciones cuyo contraste haya empeorado durante el rediseño.

Automatizar la revisión de accesibilidad

Incorpore relaciones estables a reglas de integración continua que exijan el umbral WCAG apropiado para los pares de tokens aprobados.

¿Cuánto cuesta una solicitud?

El precio base de la API es $0.002 por solicitud.

¿Qué formatos de color se aceptan?

Se aceptan colores hexadecimales sRGB opacos de tres o seis dígitos, con almohadilla inicial o sin ella. Se rechazan alfa, nombres, HSL y formatos de gama amplia.

¿Cómo se corresponden filas, columnas y colores?

Ambos ejes siguen el orden de entrada original. Cada color devuelto incluye su índice y matrix[row][column] contiene la relación de esos dos colores indexados.

¿Por qué todos los valores diagonales son 1?

Un color comparado consigo mismo tiene la misma luminancia, por lo que la fórmula de contraste WCAG siempre produce una relación de 1.

¿Una relación demuestra que un diseño es accesible?

No. Aporta la evidencia de contraste usada en las comprobaciones WCAG, pero la accesibilidad también depende de la tipografía, los estados, el contenido y el uso correcto de cada par.

Todo lo de esta página está disponible por programación. Esta sección es para equipos que quieren integrarlo en sus sistemas; el resto puede usar la herramienta de arriba sin más.

POSThttps://api.kit.forhosting.com/color/palette-contrast-matrix

¿Prefiere automatizarlo? Un POST autenticado crea la tarea; el resultado llega por webhook o enlace firmado. La misma capacidad también se ejecuta aquí en la web, por email y desde Telegram — y pronto también desde nuestra app.

curl -X POST https://api.kit.forhosting.com/color/palette-contrast-matrix \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"colors":["#ffffff","#111827","#2563eb","#facc15"]}'
{
  "colors": [
    "#ffffff",
    "#111827",
    "#2563eb",
    "#facc15"
  ]
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "color.palette_contrast_matrix",
  "status": "queued",
  "_links": {
    "result": "/tasks/tsk_…/result"
  }
}

La API es asíncrona: la llamada devuelve un task_id al instante y el resultado llega por webhook. El polling está limitado a 1 req/s por tarea.

Por solicitud$0.002

Precio publicado — sin tokens ni créditos inventados. Una tarea fallida no se cobra.

max_items100
HTTPCódigoSignificado
401unauthorizedAPI key ausente o inválida.
402insufficient_balanceEl saldo no cubre el precio de la tarea.
404unknown_typeEl tipo de tarea no existe.
429rate_limitedDemasiadas peticiones. Use el webhook en vez de sondear.

Ver la documentación completa del KIT →