Correction gamma d'une couleur
Modifiez les tons moyens d’une couleur avec une courbe de puissance : un gamma de 2,2 transforme #3366cc en #07229c, une valeur sous 1 éclaircit, et le noir et le blanc purs ne bougent jamais. Gratuit dans votre navigateur.
- Gratuit
- Fonctionne dans votre navigateur
- Sans inscription
- Vos données restent sur votre appareil
Lancer gratuitement
Exemple résolu
- Couleur
- #3366cc
- Gamma
- 2,2
- Hex
- #07229c
- Résistance (Ω)
- 7
- G
- 34
- B
- 156
La correction gamma modifie la luminosité perçue d'une couleur en élevant chaque canal rouge, vert et bleu à une puissance, au lieu de faire glisser la luminosité en HSL ou de mélanger vers le blanc. Les designers, ingénieurs graphiques et relecteurs d'accessibilité utilisent un exposant gamma lorsqu'ils ont besoin d'éclaircir ou d'assombrir de façon non linéaire, en conservant le noir et le blanc purs tout en remodelant tout ce qui se trouve entre les deux. Cet outil accepte une couleur hex CSS et une valeur gamma dans l'intervalle semi-ouvert allant de juste au-dessus de zéro jusqu'à dix, applique la formule classique par canal (sortie égale à deux cent cinquante-cinq multiplié par le canal normalisé élevé à gamma) et renvoie l'hex corrigé et les entiers RGB. Les valeurs inférieures à un relèvent les tons moyens ; au-dessus de un elles les abaissent ; un laisse l'échantillon inchangé.
Ce que le gamma fait aux canaux RGB
Commencez avec une couleur hex CSS telle que dièse trois trois six six c c ou la forme courte dièse trois six c. L'analyseur développe les codes à trois chiffres, passe en minuscules et convertit chaque paire en entiers rouge, vert et bleu de zéro à deux cent cinquante-cinq. Chaque canal est normalisé en le divisant par deux cent cinquante-cinq pour le placer sur l'intervalle unitaire.
L'exposant gamma est ensuite appliqué par puissance en virgule flottante : la fraction unitaire élevée à gamma. Multiplier de nouveau par deux cent cinquante-cinq et arrondir à l'entier le plus proche produit le canal de sortie, borné à l'intervalle légal de zéro à deux cent cinquante-cinq. Le noir reste noir car zéro élevé à toute puissance positive vaut zéro.
Le blanc reste blanc car un élevé à toute puissance vaut un. Tout entre ces extrémités se déplace le long d'une courbe de puissance : un gamma inférieur à un courbe vers le haut et éclaircit les tons moyens ; un gamma supérieur à un courbe vers le bas et les assombrit ; un gamma égal à un est une identité pure.
Le même exposant s'applique indépendamment au rouge, au vert et au bleu, de sorte que l'équilibre relatif des canaux peut légèrement se décaler par rapport à un mouvement de luminosité HSL qui fige teinte et saturation. Cette différence est volontaire : la correction gamma est la courbe de puissance classique d'affichage et d'imagerie, non un curseur de luminosité perceptuelle. Les formes hex alpha à quatre ou huit chiffres sont rejetées car ce contrat est RGB opaque uniquement.
Contrat d'entrée, forme de réponse et validation
Envoyez deux champs : color sous forme de chaîne hex et gamma comme nombre fini strictement supérieur à zéro et au plus égal à dix. En cas de succès la réponse renvoie la couleur normalisée à six chiffres et le gamma numérique, puis fournit les échantillons original et result. Chaque échantillon inclut role, hex, les entiers r g b et une chaîne rgb affichable.
Les champs de premier niveau hex, r, g et b reflètent le résultat corrigé par gamma pour les clients en une ligne. Une courte chaîne formula documente la règle de puissance par canal pour la documentation et le support. Contrôles typiques : appliquer gamma deux virgule deux à un bleu moyen, appliquer gamma zéro virgule cinq à un rouge pur pour éclaircir les tons moyens, confirmer que gamma un renvoie l'hex d'origine, et rejeter gamma quinze ou une couleur manquante.
Branchez le formulaire gratuit du navigateur pour des aperçus rapides, puis appelez le même contrat depuis des scripts pour la génération massive de jetons ou les contrôles d'intégration continue. Gardez le gamma dans l'intervalle documenté plutôt que de compter sur un écrêtage silencieux : cet outil échoue de façon explicite pour que systèmes de design et pipelines de rendu restent prévisibles dans tous les environnements.
Où la correction gamma apporte de la valeur
Les pipelines d'affichage et d'imagerie encodent ou décodent souvent la luminance avec une courbe de puissance proche de deux virgule deux ; les équipes produit qui livrent des échantillons de marque ont encore besoin d'un moyen compact et documenté de prévisualiser la même mathématique sur un seul hex sans ouvrir un éditeur d'image complet. Les auteurs de jetons de design génèrent des marches de teinte non linéaires en balayant le gamma sur une couleur de base lorsque l'éclaircissement ou l'assombrissement HSL paraît trop linéaire pour leur charte.
Les relecteurs d'accessibilité explorent des compagnons plus sombres ou plus clairs des couleurs de texte et d'icônes en gardant le noir et le blanc purs fixes, puis confient les candidats à un vérificateur de contraste. Les outils marketing et de présentation produisent des échantillons de campagne plus doux ou plus percutants à partir de logos saturés lorsqu'un simple éclaircissement en pourcentage lave la teinte.
Si vous avez ensuite besoin d'éclaircir en HSL, d'assombrir par pourcentage, de mélanger deux hex ou de vérifier le contraste WCAG, traitez-les comme des intentions de recherche et des pages d'atterrissage distinctes plutôt que de surcharger cette page gamma.
Cas d’usage
Prévisualiser le gamma d'affichage sur un hex de marque
Appliquez une courbe de puissance de type 2.2 à une seule couleur de marque et capturez l'hex résultant pour la documentation, les aperçus de thème et les revues de design.
Rampes de teinte non linéaires pour jetons
Balayez le gamma sur un échantillon de base pour générer des marches de tons moyens qui gardent noir et blanc fixes tout en remodelant l'intervalle intermédiaire.
Questions fréquentes
Comment la correction gamma modifie-t-elle ma couleur hex ?
Chaque canal RGB c devient round(255 × (c/255)^gamma). Le noir et le blanc restent fixes ; les tons moyens s'éclaircissent si gamma est inférieur à 1 et s'assombrissent s'il est supérieur à 1.
Quelle plage de gamma est autorisée ?
Gamma doit être un nombre fini dans (0, 10].
Quels formats hex sont acceptés ?
Hex CSS à trois et six chiffres, avec ou sans dièse initial. Les formes alpha (#rgba / #rrggbbaa) et les caractères non hex sont rejetés.
Que fait un gamma de 2,2 sur #3366cc ?
Il assombrit les tons moyens et renvoie #07229c, soit RVB 7, 34, 156. Chaque canal est divisé par 255, élevé à la puissance 2,2, remultiplié par 255 puis arrondi.
Pourquoi le noir et le blanc ne changent-ils pas ?
Parce que la correction élève à une puissance chaque canal ramené entre 0 et 1 : 0 reste 0 et 1 reste 1. Seuls les tons intermédiaires se déplacent le long de la courbe.
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/gamma \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"color":"#3366cc","gamma":2.2}'const res = await fetch("https://api.kit.forhosting.com/color/gamma", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"color": "#3366cc",
"gamma": 2.2
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/color/gamma",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"color": "#3366cc",
"gamma": 2.2
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/color/gamma", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"color":"#3366cc","gamma":2.2}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"color":"#3366cc","gamma":2.2}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/color/gamma", 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
{
"color": "#3366cc",
"gamma": 2.2
}Exemple de réponse
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "color.gamma",
"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.
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
Les chaînes hex invalides et un gamma hors plage échouent avec invalid_input explicite, sans écrêtage silencieux.
Contrat d'entrée, forme de réponse et validation
Color accepte aussi les alias hex et base ; gamma accepte g et exponent. Champs manquants, caractères non hex, longueurs incorrectes, NaN, Infinity, zéro, gamma négatif et valeurs au-dessus de dix échouent avec invalid_input et ne sont pas facturés. Le tarif des appels API réussis est la base publiée de $0.002 par élément ; les échecs de validation ne consomment pas le solde prépayé.
Où la correction gamma apporte de la valeur
Comme cette capacité est un moteur parse pur, le tarif API est la base publiée de $0.002 par élément réussi et une validation en échec ne consomme pas le solde.
Cas d'intégration
Contrôles golden CI des tons moyens du thème
Vérifiez que les jetons de production correspondent encore au RGB corrigé par gamma attendu après des modifications de palette, sans ouvrir un éditeur d'image.
Questions techniques
Que se passe-t-il pour gamma = 1 ?
Gamma 1 est l'identité : aucun canal ne change, donc l'hex résultat correspond à l'hex d'entrée normalisé.
Combien coûte l'application de la correction gamma ?
L'outil navigateur est gratuit et s'exécute localement. Les requêtes API utilisent le solde prépayé KIT à $0.002 par élément réussi ; une entrée invalide n'est pas facturée.