RGB a HSL
Convertidor de RGB a HSL: Convierte códigos de color RGB a códigos de color HSL
¿Estás buscando una manera fácil y eficiente de convertir códigos de color RGB a códigos de color HSL? No busques más, nuestro Convertidor de RGB a HSL es la solución. Nuestra herramienta en línea es gratuita, rápida y segura, y no requiere dependencias de sistema o software.
Características
- Herramienta gratuita y en línea
- Sin dependencias de sistema o software
- Botón de Limpiar y Copiar
- Entrada de muestra
- Seguridad de datos a través de computación local
Introducción
El Convertidor de RGB a HSL es una herramienta en línea que permite a los usuarios convertir códigos de color RGB a códigos de color HSL. RGB (rojo, verde, azul) y HSL (matiz, saturación, luminosidad) son dos formas diferentes de representar colores, y el Convertidor de RGB a HSL facilita la conversión entre ellos.
Beneficios y Ventajas
La principal ventaja de usar el Convertidor de RGB a HSL es que simplifica el proceso de convertir códigos de color RGB a códigos de color HSL. La herramienta es gratuita y en línea, por lo que los usuarios pueden acceder a ella desde cualquier lugar con conexión a internet. Además, la herramienta es rápida y segura, lo que la convierte en una opción confiable para cualquier persona que necesite convertir códigos de color RGB a códigos de color HSL.
El Algoritmo Principal
El algoritmo principal utilizado por el Convertidor de RGB a HSL es sencillo y fácil de entender. Involucra un conjunto simple de cálculos para convertir códigos de color RGB a códigos de color HSL. La fórmula para convertir de RGB a HSL es la siguiente:
- Para calcular H:
- Encuentra los valores máximo y mínimo entre R, G y B.
- Luego, H se calcula utilizando la siguiente fórmula:
if (max == min) H = 0 else if (max == R) H = 60 _ ((G - B) / (max - min)) else if (max == G) H = 60 _ ((B - R) / (max - min)) + 120 else if (max == B) H = 60 \* ((R - G) / (max - min)) + 240 if (H < 0) H += 360
- Para calcular S:
- Si el máximo y el mínimo son ambos 0, S es 0.
- De lo contrario, S se calcula como (max - min) / (1 - abs(max + min - 1))
- Para calcular L:
- L es simplemente el promedio de max y min.
Cómo utilizar el convertidor RGB a HSL
Utilizar el convertidor RGB a HSL es fácil y sencillo. Aquí tienes una guía paso a paso:
- Ingresa o pega el código de color RGB que deseas convertir en la herramienta.
- Haz clic en el botón "Convertir" para convertir el código de color RGB a HSL.
- El código de color HSL se mostrará en la pantalla.
- Copia el código de color HSL en tu portapapeles haciendo clic en el botón "Copiar".
¡Eso es todo! Con solo unos clics, puedes convertir cualquier código de color RGB a su correspondiente código de color HSL.
Ejemplos
Python
def rgb_to_hsl(r, g, b):
r, g, b = r/255.0, g/255.0, b/255.0
max_val = max(r, g, b)
min_val = min(r, g, b)
h, s, l = 0, 0, ((max_val + min_val) / 2)
if max_val == min_val:
h = s = 0
else:
diff = max_val - min_val
s = diff / (2 - max_val - min_val)
if max_val == r:
h = (g - b) / diff + (g < b and 6 or 0)
elif max_val == g:
h = (b - r) / diff + 2
else:
h = (r - g) / diff + 4
h /= 6
return (int(h*360), int(s*100), int(l*100))
C
#include <stdio.h>
void ConvertRGBtoHSL(int r, int g, int b)
{
float fr = r / 255.0f;
float fg = g / 255.0f;
float fb = b / 255.0f;
float max = fr > fg ? (fr > fb ? fr : fb) : (fg > fb ? fg : fb);
float min = fr < fg ? (fr < fb ? fr : fb) : (fg < fb ? fg : fb);
float h = 0, s = 0, l = (max + min) / 2.0;
if (max == min) {
h = 0;
s = 0;
}
else {
float d = max - min;
s = l > 0.5 ? d / (2 - max - min) : d / (max + min);
if (max == fr) {
h = (fg - fb) / d + (fg < fb ? 6 : 0);
}
else if (max == fg) {
h = (fb - fr) / d + 2;
}
else if (max == fb) {
h = (fr - fg) / d + 4;
}
h /= 6;
}
printf("HSL: %.0f, %.0f%%, %.0f%%\n", h * 360, s * 100, l * 100);
}
JavaScript
function rgbToHsl(r, g, b) {
(r /= 255), (g /= 255), (b /= 255);
let max = Math.max(r, g, b),
min = Math.min(r, g, b);
let h,
s,
l = (max + min) / 2;
if (max == min) {
h = s = 0;
} else {
let d = max - min;
s = l > 0.5 ? d / (2 - max - min) : d / (max + min);
switch (max) {
case r:
h = (g - b) / d + (g < b ? 6 : 0);
break;
case g:
h = (b - r) / d + 2;
break;
case b:
h = (r - g) / d + 4;
break;
}
h /= 6;
}
return [h * 360, s * 100, l * 100];
}
Java
public static void rgbToHsl(int r, int g, int b) {
float fr = r / 255.0f;
float fg = g / 255.0f;
float fb = b / 255.0f;
float max = Math.max(fr, Math.max(fg, fb));
float min = Math.min(fr, Math.min(fg, fb));
float h = 0, s = 0, l = (max + min) / 2;
if (max == min) {
h = 0;
s = 0;
} else {
float d = max - min;
s = l > 0.5 ? d / (2 - max - min) : d / (max + min);
if (max == fr) {
h = (fg - fb) / d + (fg < fb ? 6 : 0);
} else if (max == fg) {
h = (fb - fr) / d + 2;
} else if (max == fb) {
h = (fr - fg) / d + 4;
}
h /= 6;
}
System.out.printf("HSL: %.0f, %.0f%%, %.0f%%\n", h * 360, s * 100, l * 100);
}
PHP
function RGB2HSL($R, $G, $B) {
$R = ($R / 255);
$G = ($G / 255);
$B = ($B / 255);
$maxValue = max($R, $G, $B);
$minValue = min($R, $G, $B);
$delta = $maxValue - $minValue;
$L = ($maxValue + $minValue) / 2;
$H = 0;
$S = 0;
if ($delta == 0) {
$H = 0;
$S = 0;
} else {
if ($L < 0.5) {
$S = $delta / ($maxValue + $minValue);
} else {
$S = $delta / (2 - $maxValue - $minValue);
}
$deltaR = ((($maxValue - $R) / 6) + ($delta / 2)) / $delta;
$deltaG = ((($maxValue - $G) / 6) + ($delta / 2)) / $delta;
$deltaB = ((($maxValue - $B) / 6) + ($delta / 2)) / $delta;
if ($R == $maxValue) {
$H = $deltaB - $deltaG;
} else if ($G == $maxValue) {
$H = (1 / 3) + $deltaR - $deltaB;
} else if ($B == $maxValue) {
$H = (2 / 3) + $deltaG - $deltaR;
}
if ($H < 0) {
$H++;
}
if ($H > 1) {
$H--;
}
}
return [(int)($H * 360), (int)($S * 100), (int)($L * 100)];
}
Conclusión
El convertidor RGB a HSL es una herramienta fácil de usar y eficiente para convertir códigos de color RGB a códigos de color HSL. Con su diseño gratuito, en línea y seguro, cualquier persona puede utilizar la herramienta para convertir colores de forma rápida y sencilla. Ya seas diseñador, desarrollador o simplemente alguien que necesita convertir colores, el convertidor RGB a HSL es la herramienta perfecta para el trabajo.