RGB конвертер онлайн
Вставили цвет из Figma в код – и он не подходит, потому что дизайнер отдал HEX, а CSS-переменная ждёт HSL. Или типография просит CMYK, а у вас только RGB с экрана. Конвертация между цветовыми форматами – рутинная задача, которая решается за секунды.
Конвертер RGB онлайн
Результат
- HEX
#000000- RGB
rgb(0, 0, 0)- RGBA
rgba(0, 0, 0, 1)- HSL
hsl(0, 0%, 0%)- HSV / HSB
hsv(0, 0%, 0%)- CMYK
cmyk(0%, 0%, 0%, 100%)- Нормализованный
rgb(0, 0, 0)
Калькулятор переводит цвет между шестью форматами одновременно: RGB, HEX, HSL, HSV, CMYK и нормализованный RGB. Введите значения любого формата – остальные пересчитаются автоматически. Можно также выбрать цвет из палитры или вставить HEX-код с решёткой или без.
Результат по каждому формату – готовая строка для копирования. Для CSS сразу показывается синтаксис rgb(), hsl() и #hex.
Расчёты выполняются по стандартным математическим формулам. Небольшое расхождение в CMYK возможно из-за разницы в цветовых профилях – для точной полиграфии используйте ICC-профили в профессиональных программах.
Что означают числа в RGB
RGB расшифровывается как Red, Green, Blue – красный, зелёный, синий. Это аддитивная модель: цвет получается смешением световых лучей трёх основных цветов.
Каждый канал принимает значение от 0 до 255 (8 бит). Ноль означает полное отсутствие этого цвета, 255 – максимальную интенсивность. Комбинаций – ровно 16 777 216.
| Значение | Описание |
|---|---|
| rgb(0, 0, 0) | Чёрный – все каналы выключены |
| rgb(255, 255, 255) | Белый – все каналы на максимуме |
| rgb(255, 0, 0) | Чистый красный |
| rgb(0, 128, 0) | Зелёный (CSS «green») |
| rgb(128, 128, 128) | Серый – равные ненулевые каналы |
Когда все три канала одинаковы, цвет всегда будет нейтральным серым. Разница между каналами создаёт оттенок.
Как работает перевод RGB в HEX
HEX – тот же RGB, просто записанный в шестнадцатеричной системе счисления. Каждый из трёх каналов превращается в двузначное шестнадцатеричное число.
Алгоритм:
- Возьмите значение канала (0–255).
- Разделите на 16 – получите первую цифру HEX.
- Остаток от деления – вторая цифра.
- Запишите три пары рядом с символом
#.
Пример: rgb(255, 87, 51)
- 255 ÷ 16 = 15 остаток 15 → FF
- 87 ÷ 16 = 5 остаток 7 → 57
- 51 ÷ 16 = 3 остаток 3 → 33
Результат: #FF5733
Если оба HEX-знака канала одинаковы (например, #AABBCC), запись сокращается до трёх символов: #ABC. Это только косметическое сокращение – цвет тот же.
Перевод RGB в HSL: тон, насыщенность, яркость
HSL (Hue, Saturation, Lightness) удобен, когда нужно настраивать цвет интуитивно – изменять тон, не трогая яркость.
Формула:
- Нормализуйте каналы: r = R/255, g = G/255, b = B/255.
- Найдите max и min из трёх значений.
- Яркость (L):
(max + min) / 2 - Насыщенность (S): если max = min, то S = 0; иначе
(max − min) / (1 − |2L − 1|) - Тон (H): зависит от того, какой канал является максимальным:
- max = r:
H = (g − b) / (max − min) × 60 - max = g:
H = (2 + (b − r) / (max − min)) × 60 - max = b:
H = (4 + (r − g) / (max − min)) × 60
- max = r:
Если H получился отрицательным, прибавьте 360.
Пример: rgb(255, 87, 51) → hsl(14°, 100%, 60%)
В CSS это пишется как hsl(14, 100%, 60%). Изменив 14 на 200, получите тот же цвет, но в голубых тонах – насыщенность и яркость сохранятся.
Перевод RGB в CMYK для печати
CMYK (Cyan, Magenta, Yellow, Key/Black) – субтрактивная модель. Используется в полиграфии, где цвет получается вычитанием красок из белой бумаги.
Формула:
- Нормализуйте: r = R/255, g = G/255, b = B/255.
K = 1 − max(r, g, b)C = (1 − r − K) / (1 − K)M = (1 − g − K) / (1 − K)Y = (1 − b − K) / (1 − K)
Умножьте C, M, Y, K на 100 для процентной записи.
Пример: rgb(255, 87, 51) → cmyk(0%, 66%, 80%, 0%)
Важная оговорка: математический перевод RGB → CMYK не учитывает характеристики конкретной бумаги и красок. Для точного цвета в типографии всегда согласовывайте файл с цветовым профилем ICC (обычно ISO Coated v2 или Fogra39).
HSV против HSL: в чём разница
Оба формата описывают цвет через тон (Hue), но по-разному задают яркость.
| Параметр | HSL | HSV |
|---|---|---|
| Максимальная яркость | Белый (L = 100%) | Насыщенный цвет (V = 100%) |
| Используется в | CSS, веб-дизайн | Фоторедакторы, Adobe |
| Интуитивность | Ближе к восприятию | Ближе к работе с палитрой |
HSV (Hue, Saturation, Value) – тот же формат, что Photoshop называет HSB (Brightness). Когда в Photoshop вы двигаете ползунок B, вы меняете именно Value в формуле HSV.
Для CSS используйте HSL. Для работы в Adobe – HSB/HSV.
Практические сценарии конвертации
Из Figma в код. Figma по умолчанию показывает HEX. Если нужен HSL для CSS-переменных с темами – вставьте HEX в конвертер, скопируйте HSL.
Из Photoshop в веб. Photoshop работает в HSB и CMYK. Для публикации в интернете переведите финальный цвет в RGB или HEX через конвертер – LAB и CMYK браузеры не поддерживают.
Подбор вариаций цвета. Переведите цвет в HSL и изменяйте только тон (H) с шагом 30° – получите гармоничную палитру с одинаковой насыщенностью и яркостью.
Адаптация для слабовидящих. Переведите цвет в HSL и проверьте L (яркость). Разница по яркости между фоном и текстом должна быть не менее 50–60 процентных пунктов для достаточного контраста.
Для единичных задач быстрее всего – конвертер выше. Для потока задач в разработке удобно подключить библиотеку: chroma (Go), tinycolor2 (JavaScript), colorsys (Python) – все работают по тем же формулам и дают идентичные результаты.
Часто задаваемые вопросы
Как перевести RGB в HEX вручную?
Каждый из трёх каналов (R, G, B) переводится в шестнадцатеричное число. Например, rgb(255, 87, 51): 255 → FF, 87 → 57, 51 → 33, итог – #FF5733. Если число меньше 16, спереди добавляется ноль.
Чем отличается RGB от RGBA?
RGBA – расширение RGB с четвёртым каналом – Alpha, который задаёт прозрачность от 0 (полностью прозрачный) до 1 (непрозрачный). Например, rgba(255, 87, 51, 0.5) – тот же оранжевый цвет, но с 50% прозрачностью.
Почему один и тот же цвет в RGB и CMYK выглядит по-разному?
RGB – аддитивная модель для экранов, CMYK – субтрактивная для печати. Охват цветов у этих моделей различается: некоторые яркие RGB-цвета невозможно точно воспроизвести на бумаге.
Что такое нормализованный RGB?
Нормализованный RGB записывает каждый канал как число от 0 до 1 вместо 0–255. Используется в OpenGL, научных вычислениях и шейдерах. Перевод простой: разделите значение канала на 255.
Как из HSL перевести обратно в RGB?
Для обратного перевода используется алгоритм через вспомогательные коэффициенты C, X, m, зависящие от тона, насыщенности и яркости. Проще всего воспользоваться онлайн-конвертером – ручной расчёт занимает несколько шагов.
Какой формат цвета лучше использовать в CSS?
Для веба удобен HEX (#RRGGBB) – он короткий и универсален. HSL предпочтителен, когда нужно менять оттенок программно: достаточно изменить один параметр. RGB и RGBA – для управления прозрачностью.
Сколько цветов можно записать в формате RGB?
RGB с 8 битами на канал даёт 256 × 256 × 256 = 16 777 216 уникальных цветов. Формат RGB16 (16 бит на канал) расширяет палитру до 281 триллиона оттенков и применяется в профессиональной фотографии.