ForHosting KIT · Outils pour développeurs

Trier les couleurs par luminance

Transformez un ensemble désordonné de couleurs hex en une gamme prévisible du sombre au clair.

● BetaGratuit · dans votre navigateur
Utilisez-le depuis WebAPIE-mailTelegramApp bientôt

Cet outil valide chaque valeur, normalise les notations hex courte et complète, convertit les canaux sRGB en lumière linéaire et trie selon la luminance relative WCAG. Chaque résultat fournit la couleur normalisée et sa luminance, afin que vous puissiez examiner les écarts subtils sans vous fier à une impression visuelle. Les ex æquo gardent leur ordre initial, les doublons restent présents et une même entrée produit toujours la même sortie.

Créez une gamme lumineuse depuis une palette désordonnée

Les collections suivent souvent la création des jetons ou la sérialisation du fichier, et non leur luminosité. Envoyez le tableau colors pour recevoir des enregistrements classés par luminance relative croissante. Les formes à trois chiffres sont développées, celles à six chiffres acceptent un dièse facultatif et la sortie emploie #rrggbb en minuscules. Cette normalisation simplifie les instantanés, fichiers de jetons, feuilles CSS et comparaisons. Les doublons sont conservés, car ils peuvent désigner des jetons différents. À luminance strictement égale, l’ordre d’entrée est maintenu afin d’éviter toute variation. La réponse précise aussi le nombre, le sens et la méthode. Utilisez-la pour produire une palette séquentielle ou étudier des teintes voisines. L’opération réordonne seulement les couleurs : elle ne crée aucune nuance, ne renomme aucun jeton et ne garantit pas des intervalles perceptuellement uniformes.

Comprenez comment la luminance relative impose l’ordre

La luminance relative n’est pas une simple moyenne des octets rouge, vert et bleu. Les couleurs hex encodent des canaux sRGB selon une courbe non linéaire : chaque canal est ramené entre zéro et un, puis converti en lumière linéaire. Les valeurs sous le seuil sRGB sont divisées par 12.92 ; les autres utilisent la fonction de puissance standard. Les coefficients 0.2126, 0.7152 et 0.0722 sont ensuite appliqués. Le vert pèse le plus et le bleu le moins ; le résultat va de zéro pour le noir à un pour le blanc. Le tri exploite la valeur complète non arrondie. Les six décimales affichées facilitent uniquement la lecture et la sérialisation stable. Ce modèle intervient dans WCAG, mais un classement ne démontre pas l’accessibilité : contrôlez séparément chaque couple premier plan–arrière-plan.

Validez les entrées et intégrez un résultat déterministe

Le champ colors doit être un tableau non vide de 1000 éléments au maximum. Chaque élément doit être une chaîne comportant exactement trois ou six chiffres hexadécimaux après un dièse facultatif. Les espaces extérieurs sont ignorés, mais l’alpha, les noms CSS, les fonctions rgb(), les longueurs erronées et les autres types sont refusés. L’erreur indique l’index concerné sans supprimer ni deviner une valeur. Une chaîne de conception ne peut donc pas accepter une gamme partielle trompeuse. L’implémentation effectue uniquement des calculs locaux et un tri en mémoire, sans réseau, horloge, hasard ni conservation. Le même tableau produit ainsi le même JSON dans le navigateur, en CI et via API. Le navigateur est gratuit et chaque appel API coûte $0.002. Doublons conservés et ex æquo stables permettent de rattacher sûrement les résultats aux métadonnées sources.

Classer des jetons de conception

Transformez des couleurs héritées ou générées en séquence stable avant de numéroter la gamme.

Préparer les couleurs séquentielles d’un graphique

Classez les nuances par luminance relative pour faire progresser l’échelle dans un sens cohérent.

Auditer la progression d’une palette

Examinez luminances et couleurs normalisées pour repérer inversions, doublons ou écarts trop faibles.

Quel est le prix d’un appel API ?

Chaque appel API coûte $0.002. Vous pouvez aussi exécuter gratuitement le même solveur déterministe dans le navigateur.

Quels formats de couleur sont acceptés ?

Utilisez trois ou six chiffres hex avec un dièse facultatif, par exemple #abc, abc, #aabbcc ou AABBCC.

L’alpha et les noms CSS sont-ils admis ?

Non. L’hex alpha, les noms, rgb(), hsl() et les autres syntaxes CSS sont refusés pour éviter toute ambiguïté.

Que se passe-t-il si deux couleurs ont la même luminance ?

Elles conservent leur ordre relatif initial. Cette règle stable préserve également les doublons.

L’ordre sombre-clair garantit-il un contraste accessible ?

Non. Le classement décrit des couleurs seules ; l’accessibilité exige d’évaluer des couples précis de premier plan et de fond.

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.

POSThttps://api.kit.forhosting.com/color/sort-by-luminance

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é.

curl -X POST https://api.kit.forhosting.com/color/sort-by-luminance \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"colors":["#f8fafc","#0f172a","#22c55e","#64748b"]}'
{
  "colors": [
    "#f8fafc",
    "#0f172a",
    "#22c55e",
    "#64748b"
  ]
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "color.sort_by_luminance",
  "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.

par requête$0.002

Le prix est publié, sans tokens ni crédits. Une tâche qui échoue n’est pas facturée.

max_items1000
HTTPCodeSignification
401unauthorizedClé API absente ou invalide : vérifiez l’en-tête Authorization.
402insufficient_balanceSolde insuffisant : rechargez votre compte pour lancer cette tâche.
404unknown_typeType de tâche inconnu : vérifiez le champ type de votre requête.
429rate_limitedTrop de requêtes : ralentissez la cadence, puis réessayez.

Consulter la documentation complète du KIT →