Convertidor Hex8 a RGBA
Lea un color hex con transparencia canal por canal: #33669980 se separa en rojo 51, verde 102, azul 153 y alfa 128, que equivale a 0,501961 en una escala de opacidad de 0 a 1. Gratis en su navegador.
- Gratis
- Funciona en su navegador
- Sin registro
- Sus datos no salen de su equipo
Ejecutar — gratis
Ejemplo resuelto
- Hex
- #33669980
- Red
- 51
- Verde
- 102
- Azul
- 153
- Alfa
- 128
El convertidor de Hex8 a RGBA lee un color hexadecimal de ocho dígitos en orden RRGGBBAA y lo separa en los canales rojo, verde, azul y alfa. Antes de convertir, comprueba la longitud exacta y cada carácter, por lo que una entrada mal formada no puede generar números plausibles pero incorrectos. El resultado incluye cuatro valores de byte entre 0 y 255, un alfa normalizado entre 0 y 1 y un código de color canónico en minúsculas. Funciona con o sin almohadilla inicial y siempre aplica reglas transparentes y deterministas.
Comprenda el orden de bytes RRGGBBAA
Un color hexadecimal de ocho dígitos contiene cuatro pares de bytes consecutivos. El primero representa el rojo, el segundo el verde, el tercero el azul y el último el alfa. Por ejemplo, en #33669980, los pares son 33, 66, 99 y 80.
Cada par representa un entero entre 0 y 255, porque dos dígitos hexadecimales codifican exactamente un byte. El alfa sigue la convención CSS RRGGBBAA: 00 significa transparencia total y FF opacidad total. Este orden es importante, ya que otros sistemas colocan el alfa al principio y emplean AARRGGBB.
El convertidor no intenta adivinar ni reordenar valores con alfa inicial. Introduzca RRGGBBAA, opcionalmente precedido por una almohadilla, y los campos devueltos conservarán ese orden. La salida también contiene un arreglo rgba con los mismos cuatro bytes.
Valide primero y convierta después
Las cadenas de color pueden fallar de maneras difíciles de detectar. Un dígito ausente desplaza los canales posteriores, uno adicional cambia la agrupación prevista y un carácter como G no pertenece a la notación hexadecimal. Por ello, el convertidor comprueba la entrada en una secuencia fija.
Primero exige que el campo hex sea una cadena y elimina el espacio exterior. Después retira una almohadilla inicial opcional y verifica que queden exactamente ocho caracteres. Solo cuando la longitud es correcta comprueba que todos pertenezcan a 0–9, A–F o a–f.
La conversión comienza únicamente si ambas validaciones se superan. Así se evita que un analizador numérico acepte un prefijo válido e ignore texto final incorrecto. También se obtienen errores estables: una dimensión equivocada señala la longitud y un símbolo prohibido en una cadena de tamaño correcto señala los caracteres.
Las entradas válidas se normalizan a minúsculas con almohadilla, de modo que variantes equivalentes producen el mismo color canónico y los mismos canales.
Use valores RGBA deterministas en su flujo
Los canales obtenidos sirven para procesos de validación, transformación de tokens de diseño, herramientas de hojas de estilo e importaciones que necesitan valores numéricos explícitos. El byte alfa se entrega como entero exacto y como valor normalizado redondeado. El campo hex canónico facilita la deduplicación, pues #AABBCCFF y aabbccff producen la misma representación en minúsculas.
Las cadenas no válidas terminan con un error de entrada y nunca se corrigen ni rellenan.
Qué puede hacer con ella
Transformar tokens de diseño
Convierta valores RRGGBBAA en campos de canal explícitos para un compilador de temas o un sistema de componentes.
Validar colores importados
Rechace colores de ocho dígitos mal formados antes de incorporarlos a una base de datos, hoja de estilo o canal gráfico.
Examinar la transparencia
Obtenga el byte alfa exacto y su opacidad normalizada sin estimar visualmente la transparencia.
Preguntas frecuentes
¿La entrada requiere una almohadilla inicial?
No. Se aceptan #RRGGBBAA y RRGGBBAA, y el valor hexadecimal canónico devuelto incluye la almohadilla.
¿El alfa se coloca al principio o al final?
El alfa va al final. El orden obligatorio es rojo, verde, azul y alfa: RRGGBBAA, no AARRGGBB.
¿Se aceptan colores de tres, seis o cuatro dígitos?
No. Esta capacidad exige exactamente ocho dígitos hexadecimales después de la almohadilla opcional.
¿Se aceptan letras hexadecimales mayúsculas?
Sí. Se admiten A–F en mayúsculas o minúsculas, y el valor hexadecimal canónico se devuelve en minúsculas.
¿Cuánto cuesta una conversión?
El marcador de precio se resuelve desde la declaración de la capacidad.
Herramientas relacionadas
Para desarrolladores — acceso por API
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.
Endpoint de API
¿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.
Llámela desde su stack
curl -X POST https://api.kit.forhosting.com/color/hex8-rgba \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"hex":"#33669980"}'const res = await fetch("https://api.kit.forhosting.com/color/hex8-rgba", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"hex": "#33669980"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/color/hex8-rgba",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"hex": "#33669980"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/color/hex8-rgba", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"hex":"#33669980"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"hex":"#33669980"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/color/hex8-rgba", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Ejemplo de solicitud
{
"hex": "#33669980"
}Ejemplo de respuesta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "color.hex8_rgba",
"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.
Precio
Precio publicado — sin tokens ni créditos inventados. Una tarea fallida no se cobra.
Errores
| HTTP | Código | Significado |
|---|---|---|
401 | unauthorized | API key ausente o inválida. |
402 | insufficient_balance | El saldo no cubre el precio de la tarea. |
404 | unknown_type | El tipo de tarea no existe. |
429 | rate_limited | Demasiadas peticiones. Use el webhook en vez de sondear. |
Notas técnicas
Comprenda el orden de bytes RRGGBBAA
El campo alpha_normalized divide el byte alfa entre 255 y lo redondea de forma determinista a seis decimales para los sistemas que expresan la opacidad entre cero y uno.
Use valores RGBA deterministas en su flujo
Como el convertidor no depende de la red, la hora, la configuración regional ni el azar, una misma entrada siempre devuelve el mismo JSON. Use el entero cuando deba conservar la representación original de ocho bits y alpha_normalized cuando una API espere opacidad entre cero y uno. Cada conversión mediante la API cuesta $0.002; la ruta determinista del navegador permite un uso interactivo inmediato con idénticas reglas de análisis.
Preguntas técnicas
¿Qué intervalo utilizan los canales?
Rojo, verde, azul y alfa son enteros entre 0 y 255. alpha_normalized se encuentra entre 0 y 1.