Przelicz kod HEX na wartości RGB

Ostatnia aktualizacja treści:

Wpisz kod HEX, a wartości RGB pojawią się w trakcie pisania: #3B82F6 to rgb(59, 130, 246). Konwerter czyta zapis trzy-, cztero-, sześcio- i ośmioznakowy, więc odczyta też krycie z kodu #3B82F680. Przełącznikiem wybierzesz kanały w zapisie 0–255 albo 0–1.

Zapis kanałów RGB

Zapis 0–255 pasuje do CSS i programów graficznych. Zapis 0–1 stosują Unity, three.js i matplotlib.

na

Jak przeliczyć HEX na RGB?

Odczytaj kod parami znaków i zamień każdą parę z systemu szesnastkowego na dziesiętny. Pierwsza para to kanał czerwony, druga zielony, trzecia niebieski, a każda wartość mieści się w zakresie od 0 do 255. Kod #3B82F6 rozkłada się na 3B, 82 i F6, co daje rgb(59, 130, 246).


Wzór: R, G i B to kolejne pary znaków kodu odczytane jako liczby szesnastkowe.


Pojedynczą parę policzysz też w pamięci, bo to jedno mnożenie i jedno dodawanie. Pierwszy znak mnożysz przez 16 i dodajesz drugi, przy czym A oznacza 10, B oznacza 11, a F oznacza 15. Dla pary 3B daje to 3 × 16 + 11, czyli 59.


Kilka kodów wraca przy tym przeliczeniu częściej niż inne. Czerń #000000 to rgb(0, 0, 0), biel #FFFFFF to rgb(255, 255, 255), a szarość #808080 to rgb(128, 128, 128) — dokładnie połowa zakresu na każdym kanale.


W drugą stronę rachunek opiera się na tej samej liczbie, z jedną zmianą: kanał dzielisz przez 16, a resztę z dzielenia zapisujesz drugim znakiem pary. Całą zamianę wykona za Ciebie konwerter RGB na HEX.

Czym jest kod HEX, a czym RGB?

RGB opisuje kolor trzema liczbami: osobno dla kanału czerwonego, zielonego i niebieskiego, każda w zakresie od 0 do 255. Ekran składa z tych trzech składowych barwę światłem, więc im wyższe liczby, tym jaśniejszy punkt, a trzy wartości maksymalne dają biel[1].

Ekran w dużym powiększeniu: obraz zbudowany z czerwonych, zielonych i niebieskich punktów
W dużym powiększeniu widać, że ekran ma do dyspozycji tylko trzy barwy punktów. Litery i tło powstają z proporcji, w jakiej te punkty świecą, a właśnie te proporcje opisują trzy liczby zapisu RGB. Zdjęcie: Gona.eu, CC BY-SA 3.0.

Kod HEX opisuje ten sam kolor krócej. Wartość kanału mieści się w systemie szesnastkowym równo w dwóch znakach, więc cały kolor mieści się w sześciu znakach po krzyżyku.


Na co dzień oba zapisy trafiają w inne miejsca. Kod HEX podaje Figma, panel kolorów w systemie CMS i księga znaku, bo jest krótki i łatwo go przekazać. Wartości RGB wchodzą tam, gdzie kolor trzeba policzyć: w obliczeniach kontrastu WCAG, w zapisie z przezroczystością i w silnikach 3D.


Specyfikacja CSS Color Level 4 dopuszcza cztery długości kodu: trzy, cztery, sześć albo osiem znaków[2]. Zapis trzyznakowy jest skrótem, w którym przeglądarka powtarza każdy znak, więc #123 znaczy tyle samo co #112233. Wersje cztero- i ośmioznakowa dokładają na końcu krycie, gdzie 00 oznacza pełną przezroczystość, a FF pełne krycie.


Obie postacie opisują barwę w przestrzeni sRGB. Standard zaproponowały w 1996 roku Hewlett-Packard i Microsoft, a W3C przyjęło go jako obowiązujący dla HTML i CSS pod oznaczeniem IEC 61966-2-1[3]. Dlatego ten sam kod daje na każdym zgodnym ekranie tę samą barwę.

Kody HEX nazwanych kolorów CSS i ich wartości RGB

CSS pozwala zapisać część kolorów słowem, a każde takie słowo ma swój kod i swoje trzy liczby[2]. Jeśli szukasz innej barwy, wpisz jej kod do konwertera powyżej.
Otwarty wzornik kolorów z próbkami, z których każda ma własne oznaczenie
We wzorniku każda próbka ma własne oznaczenie, po którym dwie osoby dogadają się co do odcienia bez pokazywania go sobie nawzajem. Kod HEX pełni tę samą rolę na ekranie, tyle że oznaczeniem jest sześć znaków. Zdjęcie: Hannes Grobe, CC BY-SA 4.0.
Nazwa w CSSKod HEXWartości RGB
black#0000000, 0, 0
white#FFFFFF255, 255, 255
red#FF0000255, 0, 0
lime#00FF000, 255, 0
blue#0000FF0, 0, 255
yellow#FFFF00255, 255, 0
aqua#00FFFF0, 255, 255
fuchsia#FF00FF255, 0, 255
silver#C0C0C0192, 192, 192
gray#808080128, 128, 128
maroon#800000128, 0, 0
olive#808000128, 128, 0
green#0080000, 128, 0
purple#800080128, 0, 128
teal#0080800, 128, 128
navy#0000800, 0, 128
orange#FFA500255, 165, 0
pink#FFC0CB255, 192, 203

Słowo green opisuje w CSS kolor o połowie jasności kanału zielonego, a pełne 255 na tym kanale nosi nazwę lime.

Kody HEX z interfejsów: wartości RGB i zapis 0–1

Kolory z systemów projektowych rzadko mają nazwę w CSS, więc trafiają do kodu jako sam kod. Trzecia kolumna podaje ten sam kolor w zapisie ułamkowym, którego oczekują Unity, three.js i matplotlib — dokładnie to daje przełącznik Zapis kanałów RGB ustawiony na 0–1.
Kod HEXWartości RGBZapis 0–1
#FAFAFA250, 250, 2500.9804, 0.9804, 0.9804
#F5F5F5245, 245, 2450.9608, 0.9608, 0.9608
#33333351, 51, 510.2, 0.2, 0.2
#1A1A1A26, 26, 260.102, 0.102, 0.102
#3B82F659, 130, 2460.2314, 0.5098, 0.9647
#EF4444239, 68, 680.9373, 0.2667, 0.2667
#EE3333238, 51, 510.9333, 0.2, 0.2
#22C55E34, 197, 940.1333, 0.7725, 0.3686

Zapis ułamkowy powstaje przez podzielenie każdego kanału przez 255, więc 128 daje 0,502, a 255 daje równe 1.

Jakie znaki dopisać do kodu HEX, żeby ustawić krycie?

Kod ośmioznakowy kończy się dwoma znakami krycia[2]. Tabela podaje pary dla okrągłych wartości procentowych oraz krycie, które taka para daje po przeliczeniu.
KrycieZnaki w kodzieWartość kanałuDokładne krycie
100%FF255100%
90%E623090,20%
80%CC20480%
75%BF19174,90%
70%B317970,20%
60%9915360%
50%8012850,20%
40%6610240%
30%4D7730,20%
25%406425,10%
20%335120%
10%1A2610,20%
5%0D135,10%
0%0000%

Kanał krycia ma 256 stopni, tak samo jak każdy kanał koloru. Równo na okrągły procent trafiają w nim wartości co 20%, czyli 0, 20, 40, 60, 80 i 100. Pozostałe pary wypadają o dwie dziesiąte procenta obok wartości z pierwszej kolumny i na ekranie wyglądają tak samo.

Skąd wziąć kod HEX w programie, w którym pracujesz?

Każdy z tych programów pokazuje kod przy zaznaczonym elemencie, tylko w innym miejscu.

  1. Figma

    Zaznacz warstwę i kliknij kwadratową próbkę w sekcji Fill na prawym pasku. Otworzy się selektor, a pod suwakami barwy i krycia stoi lista, na której przełączysz zapis między Hex, RGB, HSB, HSL i CSS. Figma pokazuje domyślnie Hex.
  2. Photoshop

    Kliknij dwukrotnie kwadrat koloru narzędzia na dole paska narzędzi. W oknie Próbnik kolorów kod stoi w polu oznaczonym krzyżykiem, pod wartościami R, G i B.
  3. Canva

    Zaznacz element i kliknij kolor na górnym pasku. Pod kolorami dokumentu naciśnij Dodaj nowy kolor, a w polu z krzyżykiem wpiszesz albo odczytasz sześcioznakowy kod.
  4. Przeglądarka

    Kliknij element prawym przyciskiem i wybierz Zbadaj. W panelu stylów przy każdej właściwości koloru stoi mała próbka, a kliknięcie jej z wciśniętym klawiszem Shift przełącza zapis między HEX, RGB i HSL.

Jak przeliczyć HEX na RGB w Excelu?

Wpisz kod do komórki A1, a w trzech sąsiednich komórkach podaj wzory =SZESN.NA.DZIES(FRAGMENT.TEKSTU(A1;2;2)), =SZESN.NA.DZIES(FRAGMENT.TEKSTU(A1;4;2)) oraz =SZESN.NA.DZIES(FRAGMENT.TEKSTU(A1;6;2)). Dla kodu #3B82F6 zwrócą one 59, 130 i 246.


Pierwsza z tych funkcji odczytuje liczbę szesnastkową[4], a druga wycina z kodu kolejne pary znaków. FRAGMENT.TEKSTU przyjmuje komórkę, pozycję pierwszego znaku i liczbę znaków, a ponieważ kod zaczyna się od krzyżyka, kanały stoją na pozycjach 2, 4 i 6.


Skopiowanie tych trzech komórek w dół przelicza całą kolumnę kodów. W wersji angielskiej programu funkcje nazywają się HEX2DEC i MID, a argumenty rozdziela przecinek.

Źródła

  1. RGBWikipedia
  2. CSS Color Module Level 4 — zapis szesnastkowyW3C
  3. sRGBWikipedia
  4. SZESN.NA.DZIES — funkcja ExcelaMicrosoft Support

Wszystkie wartości w tabelach wyliczyliśmy z definicji jednostek i sprawdziliśmy rachunkowo przed publikacją. Dane historyczne i nazwy lokalnych jednostek opieramy na źródłach wymienionych wyżej.

Ostatnia aktualizacja treści: · przygotował i sprawdził zespół Arteon

Najczęstsze pytania o przeliczanie HEX na RGB

Czy #FFF i #FFFFFF to ten sam kolor?

Tak. Zapis trzyznakowy powtarza każdy znak, więc #FFF rozwija się do #FFFFFF, a #38F do #3388FF[2]. Oba dają w RGB dokładnie te same trzy liczby.

Jaki kod HEX ma biel, a jaki czerń?

Biel to #FFFFFF, czyli rgb(255, 255, 255), a czerń to #000000, czyli rgb(0, 0, 0). Skrótowo zapisuje się je jako #FFF i #000.

Co oznacza krzyżyk przed kodem koloru?

Krzyżyk rozpoczyna zapis szesnastkowy i mówi przeglądarce, że kolejne znaki to kod koloru. Sam nie niesie żadnej wartości, więc konwerter przyjmuje kod z krzyżykiem i bez niego.

Ile kolorów da się zapisać kodem HEX?

Każdy z trzech kanałów ma 256 stopni, co daje 16 777 216 kombinacji[3]. Kod ośmioznakowy dokłada do tego 256 stopni krycia.

Jak zapisać przezroczystość w kodzie HEX?

Dopisz na końcu dwa znaki krycia: #3B82F680 to ten sam niebieski przy kryciu w połowie. Konwerter odczyta taki kod i poda wynik w zapisie rgba(59, 130, 246, 0.5). Gotowe pary znaków dla okrągłych wartości znajdziesz w tabeli krycia powyżej.

Czym różni się zapis 0–255 od 0–1?

To ten sam kolor opisany dwiema skalami. CSS, Figma i programy graficzne liczą kanał w bajtach od 0 do 255, a Unity, three.js, OpenGL i matplotlib w ułamkach od 0 do 1. Przełącznik Zapis kanałów RGB pod polami podaje wynik w tej skali, której akurat potrzebujesz.

Czy kodu HEX można użyć w projekcie do druku?

Drukarnia pracuje na czterech farbach, więc plik do druku opisuje kolor wartościami CMYK. Trzy liczby uzyskane tutaj wpisz do konwertera RGB na CMYK, a odczytasz udziały cyjanu, magenty, żółtego i czerni.

Jak sprawdzić, czy kolor ma wystarczający kontrast?

Wytyczne WCAG liczą kontrast z wartości kanałów, więc pracę zaczynasz od przeliczenia kodu na RGB. Gotowy wynik razem z progami dla tekstu poda narzędzie do sprawdzania kontrastu i czytelności.

Zrzut ekranu darmowego narzędzia Arteon: Przelicz kod HEX na wartości RGB

Pomóż nam ulepszyć narzędzia

Masz pomysł na nową funkcję, znalazłeś błąd lub chcesz zaproponować inne narzędzie? Napisz do nas – odpowiadamy w ciągu 24 godzin.