HSL estas la amika maniero por elekti koloron, RGB estas kion ekranoj, canvas-APIoj kaj bilda kodo efektive uzas. Ĉi tiu konvertero transformas iun ajn nuancon, saturiĝon kaj lumiĝon en precizajn 0–255 kanalojn.
Kiel funkcias konvertado de HSL al RGB
- Konvertu S kaj L al frakcioj kaj kalkulu la kromon C = (1 − |2L − 1|) × S.
- Dividu la nuancon per 60 por trovi ĝian segmenton sur la kolorrado kaj kalkulu la interan valoron X = C × (1 − |(H/60 mod 2) − 1|).
- Asignu C, X kaj 0 al la R, G kaj B loko-juĝoj laŭ tiu segmenta ordigo.
- Aldonu la lumiĝan ofseton L − C/2 al ĉiuj tri kanaloj kaj multipliku per 255.
Efektiva ekzemplo
La rezulto estas preciza ĝis la fina rondigo al tutaj kanalaj nombroj. Frakciaj nuanco- aŭ saturiĝvaloroj estas subtenataj kaj simple falas al la plej proksima RGB-trio.
HSL kaj RGB klarigo
Kio estas HSL?
HSL dividas koloron en nuancon (0–360° sur la kolorrado), saturiĝon (kiom kolora, 0–100%) kaj lumon (kiom hela, 0–100%). Ĉar ĉiu parto kongruas kun la maniero kiel homoj priskribas koloron, HSL estas la plej simpla formato por konstrui kolorkopiojn, nuancojn kaj konsekvencajn paletrojn — per mano aŭ en kodo.
- Sintekso:
- hsl(H, S%, L%)
- Gamo:
- 0–360°, 0–100%, 0–100%
- Plej taŭga por:
- paletroj, nuancoj kaj ombroj, temigado
Kio estas RGB?
RGB priskribas koloron kiel tri lumkanalojn — ruĝa, verda kaj blua — ĉiu de 0 ĝis 255. Ĝi spegulas kiel ekranoj fakte funkcias: ĉiuj tri je 255 donas blankon, ĉiuj je 0 donas nigrion. RGB estas la ĝusta elekto kiam vi bezonas kalkuli kun koloro, kaj rgba() aldona travideblecon supre.
- Sintekso:
- rgb(R, G, B)
- Gamo:
- 0–255 po kanalo
- Plej taŭga por:
- kodo, canvas, travidebleco kun rgba()
HSL al RGB referenctabelo
La plej oftaj CSS-koloroj, konvertitaj de HSL al RGB.
| Koloro | HSL | RGB |
|---|---|---|
| black | hsl(0, 0%, 0%) | rgb(0, 0, 0) |
| white | hsl(0, 0%, 100%) | rgb(255, 255, 255) |
| red | hsl(0, 100%, 50%) | rgb(255, 0, 0) |
| lime | hsl(120, 100%, 50%) | rgb(0, 255, 0) |
| blue | hsl(240, 100%, 50%) | rgb(0, 0, 255) |
| yellow | hsl(60, 100%, 50%) | rgb(255, 255, 0) |
| orange | hsl(39, 100%, 50%) | rgb(255, 166, 0) |
| teal | hsl(180, 100%, 25%) | rgb(0, 127, 128) |
| purple | hsl(300, 100%, 25%) | rgb(128, 0, 127) |
| gray | hsl(0, 0%, 50%) | rgb(128, 128, 128) |