Convertisseur HSV→RGB
Transformez un choix HSV en canaux d’écran : teinte 210, saturation 70 % et valeur 80 % donnent rgb(61, 133, 204), soit #3d85cc, selon la formule classique à six secteurs. Gratuit dans votre navigateur.
- Gratuit
- Fonctionne dans votre navigateur
- Sans inscription
- Vos données restent sur votre appareil
Lancer gratuitement
Exemple résolu
- H
- 210
- S
- 70
- Tension (V)
- 80
- Valeur
- 80
- Teinte
- 210
- Satur. (%)
- 70
- Résistance (Ω)
- 61
Saisissez la teinte de zéro à trois cent soixante degrés, la saturation de zéro à cent pour cent et la valeur de zéro à cent pour cent ; l'outil applique la formule classique à six secteurs, renvoie r, g et b de zéro à deux cent cinquante-cinq, et livre aussi une chaîne hex, une forme CSS rgb() prête à coller et les calculs intermédiaires de chroma étape par étape.
Ce que signifie HSV et comment le RGB est dérivé
HSV signifie teinte (hue), saturation et valeur—un modèle cylindrique qui correspond mieux à la façon dont beaucoup de gens choisissent les couleurs dans un logiciel de design que les curseurs bruts rouge-vert-bleu. La teinte est un angle sur la roue des couleurs mesuré en degrés : zéro et trois cent soixante tombent tous deux sur le rouge pur, soixante est le jaune, cent vingt le vert, cent quatre-vingts le cyan, deux cent quarante le bleu et trois cents le magenta.
La saturation est la distance de la couleur par rapport au gris vers le chroma maximal, exprimée ici en pourcentage de zéro (pas de couleur, seulement des niveaux de gris) à cent (pureté maximale pour cette teinte et cette luminosité). La valeur est la luminosité de zéro (noir, quelle que soit la teinte) à cent (la version la plus brillante de cette teinte et saturation).
La conversion en RGB normalise d'abord saturation et valeur sur l'intervalle unitaire de zéro à un, calcule le chroma C égal à V fois S, l'intermédiaire X à partir de la position fractionnaire dans un secteur de soixante degrés, et l'appariement m égal à V moins C, puis assigne le triplet ordonné de canaux primés selon lequel des six secteurs de soixante degrés contient la teinte. Enfin chaque canal est mis à l'échelle par deux cent cinquante-cinq et arrondi à l'entier.
C'est le même algorithme enseigné dans les cours d'infographie et utilisé par d'innombrables sélecteurs de couleur ; cette capacité l'implémente de façon déterministe pour que les tests dorés et les corrigés de cours restent stables. Comprendre la différence avec HSL compte pour ceux qui ont cherché le mauvais acronyme : la clarté en HSL n'est pas le même axe que la valeur en HSV, donc fournir des nombres HSL à cet outil produirait un RGB incorrect.
Préférez HSV lorsque votre source étiquette déjà les canaux comme teinte, saturation et valeur ou luminosité.
Conseils pratiques, limites et recherches associées
Préférez envoyer la même échelle en pourcentage que votre outil de design a exportée pour la saturation et la valeur ; n'envoyez pas de fractions de l'intervalle unitaire de zéro à un sans d'abord multiplier par cent, car une saturation de zéro virgule sept serait lue comme moins d'un pour cent et paraîtrait presque grise. La teinte trois cent soixante est acceptée et traitée comme zéro pour que les exports de roue fermée ne échouent pas.
Cette page cible ceux qui cherchent un convertisseur HSV vers RGB, teinte saturation valeur vers rouge vert bleu, ou une calculatrice de couleur HSV gratuite en ligne ; ce n'est pas un convertisseur HSL, ni un outil hex-vers-RGB, ni un extracteur de palettes d'images, ni une suite complète de gestion des couleurs avec LAB ou CMYK.
Préférez cette capacité lorsque vous avez déjà du HSV et n'avez besoin que des trois entiers de canal, d'un jeton hex ou d'une chaîne css rgb() ; si votre pipeline part de l'hex, utilisez un chemin dédié hex-vers-RGB, et si vous devez faire des allers-retours dans de nombreux espaces, utilisez un convertisseur multi-format.
Cas d’usage
Export du sélecteur de couleur vers CSS et canvas
Les développeurs prennent le HSV d'un sélecteur personnalisé ou d'un export de design et reçoivent les entiers r, g, b exacts plus les chaînes css et hex pour les feuilles de style et les remplissages Canvas.
Enseigner la formule HSV à six secteurs
Les étudiants comparent le secteur, le chroma et les canaux mis à l'échelle à la main avec le tableau steps déterministe avant de rendre le devoir d'infographie.
Questions fréquentes
Quelles plages le convertisseur HSV vers RGB accepte-t-il ?
Teinte h de 0 à 360 degrés, saturation s de 0 à 100 pour cent, et valeur v de 0 à 100 pour cent.
HSV est-il la même chose que HSL ?
Non. Les deux utilisent les noms teinte et saturation, mais la valeur (luminosité) n'est pas la même que la clarté. Cet outil n'implémente que le HSV ; ne fournissez pas de triplets HSL en espérant un RGB correct.
Que représentent r, g et b ?
Les intensités des canaux rouge, vert et bleu sous forme d'entiers de 0 à 255.
Que se passe-t-il si la saturation est hors de 0–100 ?
La valeur n'est pas écrêtée. Une validation échouée n'est pas facturée.
Que donne HSV 210, 70 %, 80 % en RVB ?
Rouge 61, vert 133 et bleu 204, soit rgb(61, 133, 204) ou #3d85cc en hex. Les étapes intermédiaires du calcul sont affichées pour que vous puissiez le vérifier.
Outils associés
Pour les développeurs — accès API
Tout sur cette page est disponible par programmation. Cette section s'adresse aux équipes qui veulent l'intégrer à leurs systèmes ; les autres peuvent simplement utiliser l'outil ci-dessus.
Endpoint
Authentification par jeton Bearer : un seul POST met la tâche en file d’attente, et le résultat vous parvient par webhook ou lien signé.
Appeler depuis votre stack
curl -X POST https://api.kit.forhosting.com/color/hsv-rgb \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"h":210,"s":70,"v":80}'const res = await fetch("https://api.kit.forhosting.com/color/hsv-rgb", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"h": 210,
"s": 70,
"v": 80
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/color/hsv-rgb",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"h": 210,
"s": 70,
"v": 80
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/color/hsv-rgb", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"h":210,"s":70,"v":80}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"h":210,"s":70,"v":80}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/color/hsv-rgb", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Exemple de requête
{
"h": 210,
"s": 70,
"v": 80
}Exemple de réponse
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "color.hsv_rgb",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}L’API est asynchrone : chaque appel renvoie un task_id immédiatement, puis vous interrogez l’état à raison d’une requête par seconde.
Tarifs
Le prix est publié, sans tokens ni crédits. Une tâche qui échoue n’est pas facturée.
Limites
h_min | 0 |
h_max | 360 |
s_min | 0 |
s_max | 100 |
v_min | 0 |
v_max | 100 |
Erreurs
| HTTP | Code | Signification |
|---|---|---|
401 | unauthorized | Clé API absente ou invalide : vérifiez l’en-tête Authorization. |
402 | insufficient_balance | Solde insuffisant : rechargez votre compte pour lancer cette tâche. |
404 | unknown_type | Type de tâche inconnu : vérifiez le champ type de votre requête. |
429 | rate_limited | Trop de requêtes : ralentissez la cadence, puis réessayez. |
Notes techniques
Un convertisseur HSV vers RGB prend une couleur décrite par la teinte sur la roue, la saturation en pourcentage de chroma pure et la valeur comme luminosité, puis mappe ces trois nombres vers les canaux entiers rouge, vert et bleu que chaque écran, API canvas et système de jetons de design parle encore nativement. Une saturation hors de l'intervalle zéro à cent est rejetée avec une erreur claire invalid_input au lieu d'inventer une couleur écrêtée. Le chemin est de l'arithmétique purement déterministe—pas de réseau, pas de graines aléatoires, pas de dépendance à l'horloge—ainsi l'exécuteur gratuit du navigateur et l'API prépayée renvoient le même JSON à chaque appel.
Comment appeler l'API et ce qui revient
Envoyez un corps JSON avec trois nombres finis obligatoires : h pour la teinte en degrés de zéro à trois cent soixante (alias hue et H), s pour la saturation en pourcentage de zéro à cent (alias saturation et S), et v pour la valeur en pourcentage de zéro à cent (alias value, V et brightness). Les chaînes numériques environnantes qui correspondent à un motif numérique fini strict sont acceptées et coercées comme les nombres JSON. En cas de succès la réponse renvoie h, s et v arrondis avec les alias hue, saturation et value, les champs entiers r, g et b avec les alias red, green et blue, un tableau rgb de trois nombres, une chaîne hex en minuscules avec dièse initial, une chaîne css de la forme rgb(r, g, b), une chaîne css_hsv résumant les pourcentages d'entrée, un index de secteur de zéro à cinq pour le seau de soixante degrés utilisé, un court message en anglais, et un tableau steps montrant la normalisation, le chroma, l'affectation de secteur et les lignes d'échelle finale pour le débogage ou l'enseignement. Une validation échouée—champs manquants, nombres non finis, teinte hors de zéro à trois cent soixante, valeur hors de zéro à cent, ou saturation hors de zéro à cent—renvoie invalid_input et n'est jamais facturée. Le tarif est un forfait $0.002 par requête réussie avec article unitaire et prix marginal unitaire nul.
Conseils pratiques, limites et recherches associées
En écrivant des tests unitaires, couvrez au moins le rouge pur à saturation et valeur maximales, un bleu de secteur intermédiaire comme deux cent dix degrés avec saturation partielle, un gris à saturation zéro où seule la valeur change le niveau de gris RGB, un noir à valeur zéro qui ignore la teinte, et une saturation délibérément hors de zéro à cent pour que le chemin invalid_input ne régresse pas. Les tâches en échec qui renvoient invalid_input ne consomment pas le solde prépayé, ce qui garde bon marché les scripts exploratoires et la validation de formulaires pendant que les apprenants collent des valeurs imparfaites du presse-papiers ou sondent volontairement les bornes de saturation.
Cas d'intégration
Tests unitaires de thème et fixtures de palette
Générez des triplets RGB connus à partir de fixtures HSV afin que les tests de régression visuelle et de jetons de marque affirment des valeurs de canal stables et rejettent une saturation hors plage.
Questions techniques
Le convertisseur HSV vers RGB est-il gratuit ?
L'outil navigateur est gratuit et s'exécute localement. Les appels API utilisent le solde prépayé KIT à $0.002 par requête réussie ; les tâches en échec ne sont jamais facturées.