Convertire HSL in RGB
Ottenga semplici numeri di rosso, verde e blu da un colore HSL: tonalità 210, saturazione 80% e luminosità 45% diventano rosso 23, verde 115 e blu 207. I valori fuori intervallo vengono segnalati, mai corretti in silenzio. Gratis nel suo browser.
- Gratis
- Funziona nel suo browser
- Senza registrazione
- I suoi dati restano sul dispositivo
Esegui gratis nel browser
Esempio risolto
- Hue
- 210
- Saturazione
- 80
- Luminosità
- 45
- Red
- 23
- Verde
- 115
- Blu
- 207
Converta un colore HSL nei canali rosso, verde e blu richiesti da numerosi strumenti grafici, formati immagine e interfacce software. Inserisca la tonalità in gradi e saturazione e luminosità come percentuali per ottenere tre interi da 0 a 255. Il convertitore convalida ogni componente prima del calcolo: un valore fuori intervallo produce quindi un errore di input chiaro, anziché un colore corretto o riavvolto in modo inatteso. Il calcolo puro e deterministico è adatto a verifiche interattive, esempi di documentazione, pipeline di token di design e trasformazioni automatizzate ripetibili.
Comprendere i valori HSL in ingresso
HSL descrive un colore con tre concetti spesso più semplici da regolare rispetto ai singoli canali rosso, verde e blu. La tonalità è un angolo sulla ruota cromatica. 0 gradi rappresenta il rosso, 120 gradi il verde, 240 gradi il blu e 360 gradi ritorna alla stessa posizione rossa di 0. La saturazione controlla quanto colore compare nel risultato.
Con 0%, la tonalità non ha alcun effetto visibile e l’output è una sfumatura di grigio. Con 100%, il colore raggiunge il massimo croma disponibile per la tonalità e la luminosità scelte. La luminosità colloca il risultato tra nero e bianco: 0% è sempre nero, 50% offre la forma più intensa di una tonalità completamente satura e 100% è sempre bianco.
Fornisca la tonalità come numero finito da 0 a 360 e saturazione e luminosità come percentuali finite da 0 a 100. Gli estremi sono inclusi. I valori esterni vengono rifiutati invece di essere normalizzati in silenzio.
Ciò aiuta a individuare token di design errati e impedisce che una tonalità negativa o una percentuale superiore a 100 produca un colore plausibile ma non desiderato.
Come la conversione genera i canali RGB
Il calcolo porta innanzitutto la tonalità su una circonferenza unitaria e trasforma le percentuali di saturazione e luminosità in frazioni. Quando la saturazione è 0, il colore è acromatico; pertanto, tutti e tre i canali RGB ricevono lo stesso valore derivato dalla luminosità. Negli altri casi, l’algoritmo calcola due limiti intermedi dalla saturazione e dalla luminosità.
Campiona poi tre posizioni sulla circonferenza della tonalità, separate da un terzo di giro: una per il rosso, una per il verde e una per il blu. Un’interpolazione a tratti mappa ogni posizione tra i limiti intermedi. Infine, ciascuna frazione di canale viene moltiplicata per 255 e arrotondata all’intero più vicino.
La risposta contiene i campi rosso, verde e blu, tutti garantiti come interi tra 0 e 255. Si tratta di aritmetica deterministica: non utilizza rete, casualità, orologio, impostazioni locali o stato memorizzato. La conversione considera inoltre 360 come l’estremo della ruota equivalente a 0, pur applicando l’intervallo chiuso documentato.
Nessun input viene limitato automaticamente, così gli errori di convalida restano visibili.
Usare il risultato in modo affidabile
Utilizzi i canali restituiti ovunque un sistema richieda valori RGB a otto bit. Un foglio di stile può inserirli in un’espressione rgb(), una routine per immagini può scriverli in un pixel o in una voce della tavolozza e una build di token di design può serializzarli per piattaforme che non accettano direttamente HSL. Per una verifica manuale, inserisca un colore noto: tonalità 0, saturazione 100 e luminosità 50 producono rosso 255, verde 0 e blu 0.
Nell’automazione, gestisca gli errori separatamente dalle risposte riuscite: un campo mancante, un numero non finito o qualsiasi componente fuori intervallo costituisce un input non valido e va corretto, non riprovato senza modifiche. Conservi i valori HSL originali se il gruppo di progettazione dovrà apportare regolazioni percettive in seguito, poiché questa capacità esegue solo la conversione diretta e non ricava l’HSL originale da RGB. Poiché l’output usa interi, è pronto per i normali consumatori RGB senza un’ulteriore regola di arrotondamento che potrebbe generare differenze di un’unità tra applicazioni.
Casi d'uso
Compilare token di design
Converta i token HSL del marchio e del tema in canali RGB interi per applicazioni e build che richiedono componenti colore a otto bit.
Domande frequenti
Quali intervalli sono accettati?
La tonalità deve essere compresa tra 0 e 360. Saturazione e luminosità devono essere comprese tra 0 e 100. Tutti gli estremi sono inclusi.
Perché i valori RGB sono interi?
I risultati normalizzati dei canali vengono moltiplicati per 255 e arrotondati per l’uso diretto nelle comuni interfacce RGB a otto bit.
Le tonalità 0 e 360 sono equivalenti?
Sì. Entrambe descrivono l’estremo rosso della ruota cromatica e sono valide nell’intervallo chiuso da 0 a 360.
Quali numeri RGB corrispondono a tonalità 210, saturazione 80% e luminosità 45%?
Rosso 23, verde 115 e blu 207. Ogni canale è un numero intero tra 0 e 255, quindi può inserirlo direttamente in un programma di grafica o in un’impostazione dell’immagine.
Che cosa succede se un valore è fuori intervallo?
Viene rifiutato con un messaggio chiaro. Una tonalità negativa o una percentuale oltre 100 non viene riportata a un colore plausibile, così un valore di progetto sbagliato emerge invece di passare inosservato.
Strumenti correlati
Per sviluppatori — accesso via API
Tutto quello che vedi in questa pagina è disponibile anche via API. Questa sezione è per i team che vogliono integrarlo nei propri sistemi; chi non ne ha bisogno può semplicemente usare lo strumento qui sopra.
Endpoint
Autenticazione con Bearer token: un POST mette in coda l'attività e il risultato arriva via webhook o link firmato.
Chiamala dal tuo stack
curl -X POST https://api.kit.forhosting.com/color/hsl-to-rgb \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"hue":210,"saturation":80,"lightness":45}'const res = await fetch("https://api.kit.forhosting.com/color/hsl-to-rgb", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"hue": 210,
"saturation": 80,
"lightness": 45
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/color/hsl-to-rgb",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"hue": 210,
"saturation": 80,
"lightness": 45
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/color/hsl-to-rgb", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"hue":210,"saturation":80,"lightness":45}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"hue":210,"saturation":80,"lightness":45}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/color/hsl-to-rgb", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Esempio di richiesta
{
"hue": 210,
"saturation": 80,
"lightness": 45
}Esempio di risposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "color.hsl_to_rgb",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}L'API è asincrona: ricevi subito un task_id e puoi fare polling fino a 1 richiesta al secondo.
Prezzi
Prezzo pubblicato, senza token né crediti. Se l'attività fallisce, non paghi.
Errori
| HTTP | Codice | Significato |
|---|---|---|
401 | unauthorized | Chiave API mancante o non valida: controlla l'header Authorization. |
402 | insufficient_balance | Credito esaurito: ricarica per continuare a eseguire attività. |
404 | unknown_type | Tipo di attività sconosciuto: controlla il campo type della richiesta. |
429 | rate_limited | Troppe richieste in poco tempo: rallenta e riprova tra qualche secondo. |
Note tecniche
Come la conversione genera i canali RGB
Input identici generano quindi lo stesso JSON nel browser, in una suite di test o in un’integrazione API.
Usare il risultato in modo affidabile
Il calcolo nel browser è utile per controlli rapidi; una richiesta API costa $0.002 quando la trasformazione rientra in una pipeline ripetibile.
Casi di integrazione
Preparare valori grafici
Trasformi una scelta HSL in valori rosso, verde e blu per canvas, strumenti per immagini, grafici, tavolozze e API di rendering.
Verificare calcoli cromatici
Crei valori di riferimento deterministici per documentazione, unit test, script di migrazione e confronti tra implementazioni del colore.
Domande tecniche
Cosa accade se un valore è fuori intervallo?
La richiesta fallisce con un errore invalid_input che identifica il componente e il relativo intervallo valido. I valori non vengono riavvolti né limitati.
Quanto costa la conversione tramite API?
Ogni richiesta API riuscita usa il prezzo base pubblicato di $0.002. Lo strumento nel browser esegue localmente lo stesso calcolo deterministico.