HEX to HSV

Entrée HEX
Exemple
Sortie HSV

Convertisseur HEX en HSV : Un outil en ligne gratuit et fiable

Si vous recherchez un outil gratuit et efficace pour convertir les codes couleur HEX en leurs codes couleur HSV correspondants, vous êtes au bon endroit. Notre convertisseur HEX en HSV est un outil en ligne conçu pour fournir une conversion précise des couleurs pour vos besoins en conception web.

Objectif et scénario

En tant que concepteur web, vous devez maintenir la cohérence de la palette de couleurs de votre site web sur différentes plateformes. Alors que les codes couleur HEX sont couramment utilisés en conception web, il est nécessaire de les convertir en codes couleur HSV pour certaines fonctionnalités spécifiques. Notre convertisseur HEX en HSV est un outil utile pour les développeurs web qui ont besoin de convertir leurs codes couleur HEX en codes couleur HSV.

Avantages

Notre convertisseur HEX en HSV présente plusieurs avantages qui en font un outil précieux pour les développeurs web :

  • En ligne et gratuit : Notre outil est 100% en ligne et gratuit, et vous n'avez pas besoin de télécharger de logiciel ni d'installer de dépendances pour l'utiliser.
  • Interface conviviale : Notre outil dispose d'une interface intuitive et conviviale, où vous pouvez facilement saisir ou coller vos codes couleur HEX, les convertir, et copier ou utiliser des échantillons de couleurs.
  • Sécurité des données : Notre outil s'exécute localement sur votre ordinateur, garantissant ainsi la sécurité de vos données.

Algorithme/logique principale

L'algorithme ou la logique principale pour convertir HEX en HSV est basé sur le modèle de couleur RVB. Le modèle de couleur RVB combine les lumières rouge, verte et bleue pour créer une large gamme de couleurs. Pour convertir RVB en HSV, nous devons d'abord convertir RVB en HSL (teinte, saturation, luminosité) puis convertir HSL en HSV. La formule de conversion est la suivante :

r = R/255
g = G/255
b = B/255

cmax = max(r, g, b)
cmin = min(r, g, b)
delta = cmax - cmin

if delta == 0:
h = 0
elif cmax == r:
h = ((g - b) / delta) % 6
elif cmax == g:
h = ((b - r) / delta) + 2
else:
h = ((r - g) / delta) + 4

h = round(h \* 60)

if h < 0:
h += 360

s = round(delta / cmax _ 100)
v = round(cmax _ 100)

return "hsv({}, {}%, {}%)".format(h, s, v)

Comment utiliser l'outil

Utiliser notre convertisseur HEX en HSV est simple. Suivez ces étapes simples :

  1. Entrez ou collez votre code couleur HEX dans la boîte de saisie prévue à cet effet, comme ceci : #ffd500.
  2. Cliquez sur le bouton "Convertir" pour convertir votre code couleur HEX en son code couleur HSV correspondant.
  3. Vous pouvez ensuite copier le code couleur HSV ou cliquer sur le bouton "Copier" pour le copier dans votre presse-papiers.

Exemples en Python, C, JavaScript, Java et PHP

Si vous êtes développeur, vous pouvez utiliser notre convertisseur HEX en HSV dans votre application en incorporant le code suivant dans l'un des langages de programmation mentionnés :

Python

def hex_to_hsv(hex):
    r, g, b = tuple(int(hex[i:i+2], 16) for i in (0, 2, 4))
    r, g, b = r / 255.0, g / 255.0, b / 255.0
    cmax, cmin = max(r, g, b), min(r, g, b)
    delta = cmax - cmin
    if delta == 0:
        hue = 0
    elif cmax == r:
        hue = ((g - b) / delta) % 6
    elif cmax == g:
        hue = ((b - r) / delta) + 2
    else:
        hue = ((r - g) / delta) + 4
    hue = round(hue * 60)
    if hue < 0:
        hue += 360
    saturation = round(delta / cmax * 100)
    value = round(cmax * 100)
    return "hsv({}, {}%, {}%)".format(hue, saturation, value)

hex_code = "#ffd500"
hsv_code = hex_to_hsv(hex_code)
print("HSV:", hsv_code)

C

#include <stdio.h>
#include <stdlib.h>

void hex_to_hsv(char *hex) {
    int r = strtol(hex, NULL, 16) >> 16;
    int g = strtol(hex, NULL, 16) >> 8 & 0xFF;
    int b = strtol(hex, NULL, 16) & 0xFF;
    float r_f = r / 255.0;
    float g_f = g / 255.0;
    float b_f = b / 255.0;
    float cmax = fmax(r_f, fmax(g_f, b_f));
    float cmin = fmin(r_f, fmin(g_f, b_f));
    float delta = cmax - cmin;
    float hue;
    if (delta == 0) {
        hue = 0;
    } else if (cmax == r_f) {
        hue = fmod((g_f - b_f) / delta, 6);
    } else if (cmax == g_f) {
        hue = ((b_f - r_f) / delta) + 2;
    } else {
        hue = ((r_f - g_f) / delta) + 4;
    }
    hue = round(hue * 60);
    if (hue < 0) {
        hue += 360;
    }
    int saturation = round(delta / cmax * 100);
    int value = round(cmax * 100);
    printf("HSV: %d, %d%%, %d%%", (int)hue, saturation, value);
}

int main() {
    char hex[] = "ffd500";
    hex_to_hsv(hex);
    return 0;
}

JavaScript

function hex_to_hsv(hex) {
  var r = parseInt(hex.substring(0, 2), 16) / 255;
  var g = parseInt(hex.substring(2, 4), 16) / 255;
  var b = parseInt(hex.substring(4, 6), 16) / 255;
  var cmax = Math.max(r, g, b);
  var cmin = Math.min(r, g, b);
  var delta = cmax - cmin;
  var hue;
  if (delta === 0) {
    hue = 0;
  } else if (cmax === r) {
    hue = ((g - b) / delta) % 6;
  } else if (cmax === g) {
    hue = (b - r) / delta + 2;
  } else {
    hue = (r - g) / delta + 4;
  }
  hue = Math.round(hue * 60);
  if (hue < 0) {
    hue += 360;
  }
  var saturation = Math.round((delta / cmax) * 100);
  var value = Math.round(cmax * 100);
  return "hsv(" + hue + ", " + saturation + "%, " + value + "%)";
}

var hex_code = "ffd500";
var hsv_code = hex_to_hsv(hex_code);
console.log("HSV:", hsv_code);

Java

public static String hexToHsv(String hex) {
    int r = Integer.valueOf(hex.substring(0, 2), 16);
    int g = Integer.valueOf(hex.substring(2, 4), 16);
    int b = Integer.valueOf(hex.substring(4, 6), 16);
    float r_f = r / 255f;
    float g_f = g / 255f;
    float b_f = b / 255f;
    float cmax = Math.max(r_f, Math.max(g_f, b_f));
    float cmin = Math.min(r_f, Math.min(g_f, b_f));
    float delta = cmax - cmin;
    float hue;
    if (delta == 0) {
        hue = 0;
    } else if (cmax == r_f) {
        hue = ((g_f - b_f) / delta) % 6;
    } else if (cmax == g_f) {
        hue = ((b_f - r_f) / delta) + 2;
    } else {
        hue = ((r_f - g_f) / delta) + 4;
    }
    hue = Math.round(hue * 60);
    if (hue < 0) {
        hue += 360;
    }
    int saturation = Math.round(delta / cmax * 100);
    int value = Math.round(cmax * 100);
    return "hsv(" + hue + ", " + saturation + "%, " + value + "%)";
}

String hexCode = "ffd500";
String hsvCode = hexToHsv(hexCode);
System.out.println("HSV: " + hsvCode);

PHP

function hex_to_hsv($hex) {
    $r = hexdec(substr($hex, 0, 2)) / 255;
    $g = hexdec(substr($hex, 2, 2)) / 255;
    $b = hexdec(substr($hex, 4, 2)) / 255;
    $cmax = max($r, $g, $b);
    $cmin = min($r, $g, $b);
    $delta = $cmax - $cmin;
    if ($delta == 0) {
        $hue = 0;
    } else if ($cmax == $r) {
        $hue = fmod(($g - $b) / $delta, 6);
    } else if ($cmax == $g) {
        $hue = (($b - $r) / $delta) + 2;
    } else {
        $hue = (($r - $g) / $delta) + 4;
    }
    $hue = round($hue * 60);
    if ($hue < 0) {
        $hue += 360;
    }
    $saturation = round($delta / $cmax * 100);
    $value = round($cmax * 100);
    return "hsv(" . $hue . ", " . $saturation . "%, " . $value . "%)";
}

$hex_code = "ffd500";
$hsv_code = hex_to_hsv($hex_code);
echo "HSV: " . $hsv_code;

Conclusion

Notre convertisseur HEX en HSV est un outil fiable qui vous permet de convertir vos codes couleur HEX en leurs codes couleur HSV correspondants. Avec son interface intuitive et sa conversion précise des couleurs, notre outil est parfait pour les développeurs web et les designers souhaitant maintenir une cohérence dans leur schéma de couleurs sur différentes plateformes. Alors, qu'attendez-vous ? Essayez-le maintenant et découvrez les avantages par vous-même !

Foire aux questions (FAQ)

Découvrez nos autres outils