Si y no.
Si:
Ofrece una gama más pequeña de colores, suponiendo que se requieren enteros para cada valor . Photoshop, por ejemplo, requiere que los valores de HSB sean enteros y le gritará si intenta lo contrario:
Sin embargo, tus matemáticas parecen estar apagadas. Está en el camino correcto con RGB: cada valor puede ser un número entero de 0-255, por lo que la gama RGB consta de 256³ o 16,581,375 colores.
Para HSL, las restricciones de valor son diferentes. H puede ser 0-359, S puede ser 0-100 y B puede ser 0-100. Entonces, el número de tripletes HSL únicos es 360 * 101 * 101, o 3,672,360. Esto aún no tiene en cuenta los colores duplicados y ya somos significativamente más pequeños que RGB.
No soy lo suficientemente bueno en estadísticas para calcular el número de valores únicos para HSL basado en enteros, por lo que ni siquiera intentaré
Como resultado, habrá una colisión de color. Puede probarlo usted mismo comprobando el valor de dos valores RGB muy cercanos. Por ejemplo, #00AAAA
y #00AAAB
ambos se convierten a 180 °, 100%, 67% en Photoshop:
No:
Illustrator es un poco más relajado. Está contento y dispuesto a aceptar valores decimales para HSB:
CSS3 también acepta valores decimales para hsl()
y hsla()
. Esta implementación lo hace mucho más granular que RGB, que nunca debería aceptar valores decimales.