RGB е адитивен и е от светлина, CMYK е субтрактивен и е от мастило. Конвертирането между тях е стъпката, която всеки дизайн за екран прави, преди да бъде отпечатан.
Как работи преобразуването от RGB към CMYK
- Нормализирай каналите: раздели R, G и B на 255.
- Вземи най-големия нормализиран канал и изчисли ключа K = 1 − max.
- Изведи циан, магента и жълто, като премахнеш този дял черно: C = (1 − R − K) / (1 − K), и т.н.
- Преобразувай четирите стойности в проценти между 0 и 100.
Работещ пример
Това е математическо приближение без цветен профил. Печатниците използват ICC профили и лимити за мастило, така че тези числа са солиден ориентир, не готова за печат сепарация.
RGB и CMYK обяснени
Какво е RGB?
RGB описва цвета като три светлинни канала — red, green и blue — всеки от 0 до 255. Това отразява как работят екраните: всички три на 255 дават бяло, всички на 0 дават черно. RGB е правилният избор, когато трябва да смяташ с цвят, а rgba() добавя прозрачност.
- Синтаксис:
- rgb(R, G, B)
- Обхват:
- 0–255 за канал
- Подходящо за:
- код, canvas, прозрачност с rgba()
Какво е CMYK?
CMYK е моделът с четири мастила, използван в печата: cyan, magenta, yellow и key (black), всеки като процент от 0 до 100. Мастилото изважда светлина, вместо да я излъчва, затова CMYK покрива по-малко цветове от екрана — затова ярките екранни цветове често изглеждат по-матови при печат.
- Синтаксис:
- cmyk(C%, M%, Y%, K%)
- Обхват:
- 0–100% за мастило
- Подходящо за:
- печат, опаковки, готови за преса файлове
Таблица за преобразуване от RGB към CMYK
Най-често използваните CSS цветове, преобразувани от RGB в CMYK.
| Цвят | RGB | CMYK |
|---|---|---|
| black | rgb(0, 0, 0) | cmyk(0%, 0%, 0%, 100%) |
| white | rgb(255, 255, 255) | cmyk(0%, 0%, 0%, 0%) |
| red | rgb(255, 0, 0) | cmyk(0%, 100%, 100%, 0%) |
| lime | rgb(0, 255, 0) | cmyk(100%, 0%, 100%, 0%) |
| blue | rgb(0, 0, 255) | cmyk(100%, 100%, 0%, 0%) |
| yellow | rgb(255, 255, 0) | cmyk(0%, 0%, 100%, 0%) |
| orange | rgb(255, 165, 0) | cmyk(0%, 35%, 100%, 0%) |
| teal | rgb(0, 128, 128) | cmyk(100%, 0%, 0%, 50%) |
| purple | rgb(128, 0, 128) | cmyk(0%, 100%, 0%, 50%) |
| gray | rgb(128, 128, 128) | cmyk(0%, 0%, 0%, 50%) |