À quoi sert cet outil
Le convertisseur accepte une couleur dans l'un des trois formats courants et affiche les trois. Modifiez le champ HEX et les champs RVB et TSL se mettent à jour ; modifiez les canaux RVB et les autres suivent. Un aperçu en direct montre la couleur obtenue.
Les formules de conversion
HEX vers RVB : chaque paire de chiffres hexadécimaux est un canal, donc #3B82F6 signifie rouge 0x3B = 59, vert 0x82 = 130, bleu 0xF6 = 246.
RVB vers TSL : avec R, V, B ramenés à 0-1, la luminosité L = (max + min) / 2. La saturation mesure l'écart des canaux par rapport au gris : S = d / (1 - |2L - 1|) où d = max - min. La teinte est l'angle sur le cercle chromatique : 0 degré pour le rouge, 120 pour le vert, 240 pour le bleu, calculé selon le canal le plus grand.
TSL vers RVB : le chemin inverse. Une fonction auxiliaire re projette l'angle de teinte sur les trois canaux en utilisant le chroma (l'intensité colorée) dérivé de la saturation et de la luminosité.
Exemple chiffré
#E74C3C se convertit en rgb(231, 76, 60) et hsl(6, 78%, 57%) : un rouge orangé très saturé et de luminosité moyenne.
Validation
Le HEX doit comporter 3 ou 6 chiffres hexadécimaux ; les canaux RVB doivent être des nombres entiers de 0 à 255 ; la teinte doit être entre 0 et 360, la saturation et la luminosité entre 0 et 100. Tout le reste affiche un message d'erreur et conserve la dernière couleur valide.
Limites
Les conversions arrondissent aux nombres entiers : convertir deux fois de suite peut décaler un canal de 1. Cette différence est invisible à l'oeil.