Алатка за одабир боја - Конвертовање RGB, Hex, CMYK и HSV Color кодова
Бесплатни онлајн алат за одабир боја са тренутном RGB, Hex, CMYK и HSV конверзијом. Кликните на спектар да визуелно одаберете боје или унесите тачне вредности. Копирајте било који формат једним кликом за веб дизајн, штампу и дигиталне пројекте.
Бирач боја
РГБ (0-255)
ЦМИК (0-100)
Бирач боја
Dokumentacija
Шта можете да урадите са овим бирачем боја
Потребан вам је савршен нијанса за ваш пројекат? Овај бирач боја вам омогућава да одаберете, прегледате и конвертујете боје између RGB, Hex, CMYK и HSV формата тренутно. Било да правите веб-сајт, дизајнирате лого или припремате датотеке за штампу, пронаћи ћете тачне вредности боја које вам требају - без погађања, без prebacivanja између алата.
Кликните било где на спектру боја да одаберете нијансу, подесите светлину клизачем или директно унесите прецизне вредности. Сваки формат се ажурира у реалном времену, и можете копирати било који код боје једним кликом.
Разумевање модела боја
Различити пројекти захтевају различите формате боја. Ево шта сваки од њих ради и када се користи:
RGB (Црвена, Зелена, Плава)
RGB ради мешањем црвене, зелене и плаве светлости - на исти начин на који ваш екран приказује боје управо сада. Свака компонента се креће од 0 до 255:
- RGB(255, 0, 0) = чиста црвена
- RGB(0, 255, 0) = чиста зелена
- RGB(0, 0, 255) = чиста плава
- RGB(255, 255, 255) = бела
- RGB(0, 0, 0) = црна
Када користити RGB: Било који дигитални рад - веб странице, мобилне апликације, видео монтажа или графике засноване на екрану. То је матерњи језик дисплеја, због чега алати попут CSS-а директно подржавају rgb() и rgba() функције. Према W3C CSS Color Module спецификацији, RGB је основни модел боја за веб стандарде.
Хексадецимални (Hex)
Hex кодови су само RGB вредности написане у бази 16 уместо базе 10. Hex боја изгледа попут #FF5733, где:
#симбол означава да је то hex код- Прва два карактера = црвена (00-FF)
- Средња два = зелена (00-FF)
- Последња два = плава (00-FF)
#FF0000= црвена,#00FF00= зелена,#0000FF= плава
Понекад ћете видети скраћену 3-карактерску варијанту попут #F00 уместо #FF0000 - ово ради када свака боја понавља исту цифру.
Када користити Hex: Примарна употреба је у веб развоју. CSS одувек подржава hex нотацију, и већина програмера налази да је брже куцати него rgb(). Честа замка: заборављање # симбола ће тихо покварити ваше стилове, пошто прегледачи неће препознати као исправну боју.
CMYK (Цијан, Магента, Жута, Кључ/Црна)
CMYK је модел боја који користе штампачи. За разлику од RGB-а (који додаје светлост), CMYK одузима светлост - мешајући мастила на белом папиру да би се створиле боје:
- Свака компонента се креће од 0% до 100%
- CMYK(0, 100, 100, 0) = црвена
- CMYK(100, 0, 100, 0) = зелена
- CMYK(0, 0, 0, 100) = чиста црна мастила
- CMYK(0, 0, 0, 0) = без мастила (бели папир провирује)
Када користити CMYK: Дизајнирање за штампу - посетнице, брошуре, часописи, амбалажа. Ево реалне провере: многе живахне RGB боје једноставно се не могу репродуковати CMYK мастилима. Она сјајна електрична плава коју видите на екрану? Изгледаће блеђе када се одштампа. Професионални дизајнери увек прегледају CMYK конверзије пре слања датотека штампачу да би избегли изненађења.
HSV (Нијанса, Засићеност, Вредност)
HSV разлаже боју на три интуитивне компоненте:
- Нијанса: Која боја (0-360°) - 0° је црвена, 120° је зелена, 240° је плава
- Засићеност: Колико је жива или сива (0-100%) - 0% је сива скала, 100% је потпуно засићена
- Вредност: Колико је светла или тамна (0-100%) - 0% је црна, 100% је пуна осветљеност
Зашто HSV важи: Одговара начину на који људи природно размишљају о боји. Желите тамноплаву? Смањите вредност. Желите мање интензивну плаву? Смањите засићеност. Ово чини HSV идеалним за интерактивне бирače боја попут овог, где бирате нијансу на спектру и подешавате осветљеност клизачем.
Формуле за конверзију боја
Бирач боја аутоматски конвертује између различитих модела боја користећи ове математичке формуле:
Конверзија RGB у Hex
За конверзију RGB у хексадецимални систем:
- Конвертујте сваку RGB компоненту (0-255) у двоцифрени хексадецимални број
- Повежите три хексадецималне вредности са # префиксом
Где toHex() конвертује децимални број у његову хексадецималну репрезентацију.
Конверзија RGB у CMYK
Конверзија из RGB у CMYK укључује следеће кораке:
- Нормализујте RGB вредности на опсег 0-1
- Израчунајте црну кључну (K) компоненту
- Израчунајте C, M и Y на основу K
Конверзија RGB у HSV
Конвертовање RGB у HSV:
За нијансу (H):
0° & \text{ако } \Delta = 0 \\ 60° \times (\frac{G' - B'}{\Delta} \mod 6) & \text{ако } C_{max} = R' \\ 60° \times (\frac{B' - R'}{\Delta} + 2) & \text{ако } C_{max} = G' \\ 60° \times (\frac{R' - G'}{\Delta} + 4) & \text{ако } C_{max} = B' \end{cases}$$ За засићеност (S): $$S = \begin{cases} 0 & \text{ако } C_{max} = 0 \\ \frac{\Delta}{C_{max}} \times 100\% & \text{иначе} \end{cases}$$ За вредност (V): $$V = C_{max} \times 100\%$$ ## Kako koristiti Birač boja Tri načina rada sa bojama: kliknite spektar, unesite tačne vrednosti ili prilagodite klizačem. Odaberite onaj koji vam najviše odgovara. ### Odabir boja vizuelno Kliknite bilo gde na **spektru boja** da odaberete nijans. Horizontalna pozicija bira ton (crvena, zelena, plava, itd.), dok vertikalna pozicija kontroliše zasićenost (živahno vs. izbeljeno). Pregled se ažurira trenutno tako da možete tačno videti šta dobijate. Povucite **klizač svetline** ispod spektra da biste boju učinili svetlijom ili tamnijom. Ovo podešava komponentu "vrednosti" u HSV terminima—levo zatamnjuje, desno osvjetljava. ### Unesite tačne vrednosti boja Već znate boju koju vam treba? Unesite je direktno: **Heks format:** Unesite kodove poput `#FF5733`. Možete uključiti ili izostaviti `#`—alat rukuje oboma. Radi i sa skraćenom 3-cifrenom verzijom (`#F37`). **RGB format:** Unesite vrednosti od 0-255 za crvenu, zelenu i plavu. Ako slučajno unesete 300, automatski će se ograničiti na 255. **CMYK format:** Unesite procente (0-100) za svaku komponentu mastila. Korisno kada usklađujete boje sa specifikacijama dizajnera za štampu. Svaki format ažurira druge u realnom vremenu. Promenite heks kod, i RGB/CMYK se automatski prilagođavaju. ### Kopiraj kodove boja Kliknite dugme za kopiranje (ikona clipboard-a) pored bilo kog formata boje. Videćete brzu potvrdu "Kopirano!", a zatim nalepite vrednost tamo gde vam treba—CSS datoteke, dizajn softver, dokumentacija, bilo gde. **Pro savet:** Kada radite na više datoteka ili aplikacija, držite ovaj alat otvoren u kartici pregledača. Možete brzo referisati i kopirati vrednosti boja bez promene konteksta. ## Реални случајеви употребе ### Веб развој Градите прекидач за тамни режим и требате варијације боја. Почните са примарном бојом вашег бренда у хекс формату (рецимо, `#3B82F6`), затим користите клизач за осветљеност да генеришете тамније верзије за позадине (`#1E3A8A`) и светлије верзије за стања при прелету (`#60A5FA`). Копирајте сваки хекс код директно у ваше CSS прилагођене особине. Приликом рада са провидношћу, преузмите RGB вредности и користите их у `rgba()` функцијама. На пример, `rgb(59, 130, 246)` постаје `rgba(59, 130, 246, 0.8)` за прекривку са 80% непровидности. Уобичајени сценарио: Клијент вам пружа Figma дизајн са бојама наведеним у RGB, али ви више волите хекс кодове у свом CSS-у. Конвертујте их овде уместо да ручно израчунавате. ### Графички дизајн за штампу Овде CMYK постаје критичан. Дизајнирали сте живописан постер на екрану са RGB бојама, али пре слања штампачу, проверите CMYK вредности. Онај електрични цијан који сте изабрали (RGB 0, 255, 255) конвертује се у CMYK(100, 0, 0, 0) - што изгледа добро. Али она сјајна екранска зелена (RGB 0, 255, 0) може приметно да се промени приликом штампања. Професионални радни ток: Унесите своје екранске боје овде, забележите CMYK конверзије, затим визуелно упоредите их у CMYK прегледном режиму вашег софтвера за дизајн. Ако се боје превише мењају, прилагодите своје избор пре финализације дизајна. Ово спречава разговор "другачије је изгледало на мом екрану" са вашом штампарском радњом. ### UI/UX Системи дизајна Изградња система дизајна захтева доследне скале боја. Почните са примарном бојом, затим креирајте 5-10 варијација осветљености за различита UI стања. Клизач за осветљеност чини ово брзим - без менталног рачунања. За приступачност, требате довољан контраст између текста и позадина. Иако овај алат не израчунава односе контраста (за то ћете требати посвећени [WCAG контраст проверавач](https://www.w3.org/WAI/WCAG21/Understanding/contrast-minimum.html)), помаже вам да брзо тестирате различите нијансе док не пронађете комбинације које функционишу. Стваран сценарио: Ваш примарни дугме користи `#2563EB`, али текст на тој позадини не испуњава захтеве контраста. Осветлите позадину или потамните текст - користите преглед да тренутно тестирате опције. ### Дигитална уметност и илустрација Радите на дигиталном сликању и требате доследну боју хармоније? Одаберите основни нијанс на спектру, затим креирајте варијације прилагођавањем само засићења и осветљености. Ово задржава вашу палету кохерентном без насумичних прелаза боја. Многи дигитални уметници држе отворен бирач боја током сликања да брзо преузму и конвертују референтне боје. Видите савршен тон сенке у референтној фотографији? Кликните овде (ако сте извукли вредност другде), добијте RGB и налепите у Photoshop, Procreate или Krita. ### Образовање о бојама и експериментисање Желите да разумете како се боје међусобно односе? Одаберите било коју боју и посматрајте како јој се вредности мењају кроз RGB, Hex, CMYK и HSV. Приметите да чиста црвена (RGB 255, 0, 0) једнака `#FF0000`, али њен CMYK еквивалент је 0, 100, 100, 0 - потпуно различити бројеви који представљају исту опажену боју. Ова визуелна повратна информација помаже студентима да схвате зашто RGB користи адитивно мешање (комбиновање светла) док CMYK користи супстрактивно мешање (комбиновање мастила). Интерактивна природа чини апстрактне концепте опипљивим. ## Ostali alati za boje koje vam mogu zatrebati Ovaj alat se fokusira na odabir i konverziju individualnih boja. U zavisnosti od vašeg projekta, možda ćete trebati: **Generatori paleta** (Adobe Color, Coolors) kada vam trebaju multiple harmonične boje zasnovane na teoriji boja—komplementarne, trijadne ili analogne šeme. **Ekstenzije za pregledač** (ColorZilla, Eye Dropper) za izdvajanje boja direktno sa bilo koje web stranice ili elementa ekrana. Odlično za usklađivanje postojećih dizajna. **Proverivači kontrasta** za rad na pristupačnosti. [WebAIM Proverivač kontrasta](https://webaim.org/resources/contrastchecker/) testira da li vaše kombinacije teksta i pozadine ispunjavaju WCAG standarde. **Pantone/RAL sistemi** za precizno podudaranje štampanih boja između različitih štamparija i materijala. Ove fizičke sličice pružaju standardizovane reference koje digitalni alati ne mogu potpuno replicirati. ## Приступачне боје Око 8% мушкараца и 0,5% жена има неки облик оштећења вида у боји. Ево како да дизајнирате инклузивно: **Никада не користите само боју** да пренесете значење. Ако ваш образац показује грешке црвеном бојом, додајте и икону или текстуалну ознаку. Графикони са различитим обојеним линијама? Додајте шаре, ознаке или обоје. **Проверите однос контраста** помоћу алата попут [WebAIM Контраст Провере](https://webaim.org/resources/contrastchecker/). Нормалан текст захтева минимални однос 4,5:1 у односу на позадину, велики текст захтева 3:1. Према [WCAG 2.1 смерницама](https://www.w3.org/WAI/WCAG21/Understanding/contrast-minimum.html), ово обезбеђује читљивост за кориснике са умерено слабим видом. **Избегавајте проблематичне комбинације:** Црвено-зелена је најчешћи проблем (протанопија и дејтеранопија утичу на перцепцију црвене и зелене). Плаво-жута изазива проблеме код особа са тританопијом. Тестирајте своје дизајне помоћу симулатора попут [Coblis](https://www.color-blindness.com/coblis-color-blindness-simulator/) да видите како изгледају корисницима са различитим типовима оштећења вида у боји. **Користите палете пријатељске према особама са далтонизмом** кад год је могуће. Плава, наранџаста и жута боја генерално добро функционишу заједно јер се могу разликовати код већине типова далтонизма. ## Често постављана питања ### Која је разлика између RGB и CMYK? RGB је за екране, CMYK је за штампу. Екрани стварају боје емитовањем црвене, зелене и плаве светлости (адитивно мешање), док штампачи стварају боје слагањем цијан, магента, жутих и црних мастила на папиру (супстрактивно мешање). RGB може да произведе светлије, живље боје него CMYK јер светлост има шири опсег боја него мастило. Зато боје са екрана често изгледају блеђе када се одштампају. ### Зашто моје боје изгледају другачије када се одштампају? Екрани емитују светлост, папир је одбија - суштински различити процеси. Осим тога, RGB обрађује милионе боја које CMYK мастила једноставно не могу репродуковати. Калибрација екрана, квалитет папира и варијације мастила додају још варијабилности. Увек проверите CMYK вредности пре штампања и затражите физичке пробне отиске за критичне послове усклађивања боја. ### Како да добијем хекс кодове боја које видим на интернету? Користите развојне алате вашег прегледача. У Chrome-у или Firefox-у, десним кликом изаберите било који елемент, одаберите „Inspect", затим кликните на мали квадратић боје у панелу стилова. Ово отвара бирач боја који показује хекс код. Проширења за прегледаче попут ColorZilla чине то још бржим - омогућавају вам да кликнете било где на страници да бисте преузели њену вредност боје. ### Шта симбол # значи у хекс кодовима? То је само префикс који прегледачу говори „ово је хексадецимални код боје". Стандард потиче из раних HTML и CSS спецификација. Шест карактера после `#` представљају RGB вредности у бази 16: два знака за црвену, два за зелену, два за плаву. Без `#`, прегледачи неће препознати као боју. ### Зашто 3-цифрени хекс кодови функционишу? То је скраћеница за случајеве када се свака боја понавља. `#F00` се проширује на `#FF0000` (црвена), `#C9C` постаје `#CC99CC` (светло љубичаста). Ова скраћеница је створена деведесетих година да би се смањила величина датотека када је пропусни опсег био скуп. И даље је згодна данас за једноставне боје. ### Да ли су конверзије боја тачне? RGB-у-хекс конверзије су математички тачне - то су исте вредности у различитим бројним системима. RGB-у-CMYK конверзије су апроксимације јер се конвертују између суштински различитих простора боја (светлост vs. мастило). Алат користи [ICC стандарде профила боја](http://www.color.org/specification/ICC1v42_2006-05.pdf) за ове конверзије, што је исти приступ који користи професионални дизајнерски софтвер. ### Како да створим приступачне комбинације боја? Користите проверавач контраста попут [WebAIM алата](https://webaim.org/resources/contrastchecker/) након одабира боја овде. Потребан вам је однос 4,5:1 за нормалан текст, 3:1 за велики текст. Избегавајте комбинације црвено-зелено (најтеже за кориснике са поремећајем вида боја). Када сте у недоумици, тамнији текст на светлијим позадинама или обрнуто - довољна разлика у луминанси је оно што највише важи. ### Да ли могу да бирам боје из слика? Не директно у овом алату. Користите проширење за прегледач попут ColorZilla, или направите screenshot слике и користите бирач боја вашег оперативног система (Digital Color Meter на macOS, PowerToys Color Picker на Windows). Када добијете вредност боје, унесите је овде да бисте конвертовали између формата. ### Зашто се неке RGB боје не конвертују добро у CMYK? CMYK имаужи „гамут" (опсег репродуктивних боја) него RGB. Светлоплаве, живописно зелене и електричне наранџасте боје често падају изван онога што CMYK мастила физички могу да створе. Када се то догоди, штампач замењује najbližu могућу варијанту, која обично изгледа мање засићено. Професионални дизајнери за штампу често почињу са CMYK-безбедним бојама да би избегли овај проблем. ## Примери кода за конверзију боја Овде су неки примери кода који показују како се конвертују различити формати боја:1// Конверзија RGB у Hex
2function rgbToHex(r, g, b) {
3 const toHex = (c) => {
4 const hex = Math.round(c).toString(16);
5 return hex.length === 1 ? '0' + hex : hex;
6 };
7
8 return `#${toHex(r)}${toHex(g)}${toHex(b)}`;
9}
10
11// Конверзија Hex у RGB
12function hexToRgb(hex) {
13 // Уклони # ако је присутан
14 const cleanHex = hex.startsWith('#') ? hex.slice(1) : hex;
15
16 // Обради и 3-цифрени и 6-цифрени hex
17 const expandedHex = cleanHex.length === 3
18 ? cleanHex.split('').map(char => char + char).join('')
19 : cleanHex;
20
21 const r = parseInt(expandedHex.substring(0, 2), 16);
22 const g = parseInt(expandedHex.substring(2, 4), 16);
23 const b = parseInt(expandedHex.substring(4, 6), 16);
24
25 return { r, g, b };
26}
27
28// Конверзија RGB у CMYK
29function rgbToCmyk(r, g, b) {
30 // Нормализација RGB вредности
31 const normalizedR = r / 255;
32 const normalizedG = g / 255;
33 const normalizedB = b / 255;
34
35 // Израчунај K (црну)
36 const k = 1 - Math.max(normalizedR, normalizedG, normalizedB);
37
38 // Обради потпуно црну
39 if (k === 1) {
40 return { c: 0, m: 0, y: 0, k: 100 };
41 }
42
43 // Израчунај C, M, Y
44 const c = ((1 - normalizedR - k) / (1 - k)) * 100;
45 const m = ((1 - normalizedG - k) / (1 - k)) * 100;
46 const y = ((1 - normalizedB - k) / (1 - k)) * 100;
47
48 return {
49 c: Math.round(c),
50 m: Math.round(m),
51 y: Math.round(y),
52 k: Math.round(k * 100)
53 };
54}
55
56// Пример употребе
57const rgb = { r: 255, g: 0, b: 0 }; // Чиста црвена
58console.log(`Hex: ${rgbToHex(rgb.r, rgb.g, rgb.b)}`);
59console.log(`CMYK:`, rgbToCmyk(rgb.r, rgb.g, rgb.b));
601# Конверзија RGB у Hex
2def rgb_to_hex(r, g, b):
3 return f'#{r:02x}{g:02x}{b:02x}'
4
5# Конверзија Hex у RGB
6def hex_to_rgb(hex_color):
7 # Уклони # ако је присутан
8 hex_color = hex_color.lstrip('#')
9
10 # Обради и 3-цифрени и 6-цифрени hex
11 if len(hex_color) == 3:
12 hex_color = ''.join([c*2 for c in hex_color])
13
14 return {
15 'r': int(hex_color[0:2], 16),
16 'g': int(hex_color[2:4], 16),
17 'b': int(hex_color[4:6], 16)
18 }
19
20# Конверзија RGB у CMYK
21def rgb_to_cmyk(r, g, b):
22 # Нормализација RGB вредности
23 r_norm = r / 255
24 g_norm = g / 255
25 b_norm = b / 255
26
27 # Израчунај K (црну)
28 k = 1 - max(r_norm, g_norm, b_norm)
29
30 # Обради потпуно црну
31 if k == 1:
32 return {'c': 0, 'm': 0, 'y': 0, 'k': 100}
33
34 # Израчунај C, M, Y
35 c = ((1 - r_norm - k) / (1 - k)) * 100
36 m = ((1 - g_norm - k) / (1 - k)) * 100
37 y = ((1 - b_norm - k) / (1 - k)) * 100
38
39 return {
40 'c': round(c),
41 'm': round(m),
42 'y': round(y),
43 'k': round(k * 100)
44 }
45
46# Пример употребе
47rgb = {'r': 0, 'g': 128, 'b': 255} # Плаво небо
48hex_color = rgb_to_hex(rgb['r'], rgb['g'], rgb['b'])
49cmyk = rgb_to_cmyk(rgb['r'], rgb['g'], rgb['b'])
50
51print(f"Hex: {hex_color}")
52print(f"CMYK: C={cmyk['c']}%, M={cmyk['m']}%, Y={cmyk['y']}%, K={cmyk['k']}%")
531public class ColorConverter {
2 // Конверзија RGB у Hex
3 public static String rgbToHex(int r, int g, int b) {
4 return String.format("#%02x%02x%02x", r, g, b);
5 }
6
7 // Конверзија Hex у RGB
8 public static int[] hexToRgb(String hexColor) {
9 // Уклони # ако је присутан
10 if (hexColor.startsWith("#")) {
11 hexColor = hexColor.substring(1);
12 }
13
14 // Обради и 3-цифрени и 6-цифрени hex
15 if (hexColor.length() == 3) {
16 String expandedHex = "";
17 for (char c : hexColor.toCharArray()) {
18 expandedHex += c + String.valueOf(c);
19 }
20 hexColor = expandedHex;
21 }
22
23 int r = Integer.parseInt(hexColor.substring(0, 2), 16);
24 int g = Integer.parseInt(hexColor.substring(2, 4), 16);
25 int b = Integer.parseInt(hexColor.substring(4, 6), 16);
26
27 return new int[]{r, g, b};
28 }
29
30 // Конверзија RGB у CMYK
31 public static double[] rgbToCmyk(int r, int g, int b) {
32 // Нормализација RGB вредности
33 double normalizedR = r / 255.0;
34 double normalizedG = g / 255.0;
35 double normalizedB = b / 255.0;
36
37 // Израчунај K (црну)
38 double k = 1 - Math.max(Math.max(normalizedR, normalizedG), normalizedB);
39
40 // Обради потпуно црну
41 if (k == 1) {
42 return new double[]{0, 0, 0, 100};
43 }
44
45 // Израчунај C, M, Y
46 double c = ((1 - normalizedR - k) / (1 - k)) * 100;
47 double m = ((1 - normalizedG - k) / (1 - k)) * 100;
48 double y = ((1 - normalizedB - k) / (1 - k)) * 100;
49
50 return new double[]{
51 Math.round(c),
52 Math.round(m),
53 Math.round(y),
54 Math.round(k * 100)
55 };
56 }
57
58 public static void main(String[] args) {
59 // Пример употребе
60 int r = 75, g = 0, b = 130; // Љубичаста
61 String hexColor = rgbToHex(r, g, b);
62 double[] cmyk = rgbToCmyk(r, g, b);
63
64 System.out.println("Hex: " + hexColor);
65 System.out.printf("CMYK: C=%.0f%%, M=%.0f%%, Y=%.0f%%, K=%.0f%%\n",
66 cmyk[0], cmyk[1], cmyk[2], cmyk[3]);
67 }
68}
69Референце и додатна литература
- W3C CSS Color Module Level 4 - Званична веб спецификација боја
- WCAG 2.1 смернице за контраст - Стандарди приступачности за контраст боја
- WebAIM провера контраста - Тестирање односа контраста боја
- ICC стандарди Color Profile - Техничка спецификација за конверзију боја
- MDN веб документација: CSS вредности боја - Свеобухватни водич кроз веб формате боја