About the HSV to RGB Converter
Canvas contexts, shaders, LED libraries and most drawing APIs take three bytes per colour, so an HSV value chosen in a picker has to be expanded before code can use it. This page does that expansion for as many colours as you paste, one per line, and prints a plain rgb() value for each.
The conversion divides the wheel into six 60 degree sectors. Chroma is value multiplied by saturation, a second component follows the position inside the sector, and a match value lifts the pair up so the brightest channel equals the requested value. The result is that the largest of the three output channels always equals value multiplied by 255, which is a quick way to sanity check a single result by hand.
Input is forgiving: the hsv() or hsb() wrapper is optional, separators can be commas, spaces or a slash, and a deg suffix on the hue is accepted. Saturation or value beyond 100 raises an error instead of being clamped. For a code you can paste into a stylesheet, follow with RGB to HEX or use HSV to HEX directly, and RGB to HSV covers the reverse trip.
How to use
- Paste HSV or HSB values, one per line.
- Press Convert to get rgb() triples.
- Paste the triple into your canvas call, shader uniform or API payload.
Common questions
- Which separators can I use?
- Commas, plain spaces and slashes all work, so 148 84 76 and 148, 84, 76 are equivalent.
- Are the RGB channels rounded?
- Yes, each channel is rounded to the nearest whole number in the 0 to 255 range.
- How can I check a result quickly?
- The largest channel should equal the value percentage times 255, so 76 percent gives roughly 194.
- Is a trailing deg on the hue allowed?
- Yes, 148deg is read as 148 degrees.