m4r Opublikowano 20 Lipca 2005 Zgłoś Opublikowano 20 Lipca 2005 (edytowane) Część 1. Kolory szesnastkowo. Kolory w notacji szesnastkowej są najczęściej spotykane w publikacjach dla internetu. Ich budowa wygląda następująco: #RRGGBB. Jak widać szesnastkowy zapis jest kombinacją trzech składowych: -czerwonego (Red), -zielonego (Green), -niebieskiego (Blue) Należy pamiętać że wszędzie tam, gdzie mamy do czynienia z RGB, wartości ieszane są ze sobą w taki sposób w jaki miesza się widzialne światło (addytywnie), więc tak samo s jak na ekranie monitora komputerowego, czy telewizora. Każdy z kolorów musi zmieścić się w zakresie od 0 do 255 (hex: 0 do FF). Mamy w ten sposób możliwość uzyskania na ekranie całej 24-bitowej palety kolorów. Łącznie więc ponad 16,7 mln kolorów. W systemie hex mamy do dyspozycji 16 "cyfr", więc trzeba pamiętać co za co podstawić. Poniższa tabelka powinna ułatwić sprawę: dec | hex | bin----+-----+----- 0 | 0 | 0000 1 | 1 | 0001 2 | 2 | 0010 3 | 3 | 0011 4 | 4 | 0100 5 | 5 | 0101 6 | 6 | 0110 7 | 7 | 0111 8 | 8 | 1000 9 | 9 | 1001 10 | A | 1010 11 | B | 1011 12 | C | 1100 13 | D | 1101 14 | E | 1110 15 | F | 1111Jak przeliczać? Dziesiętny na hex: Weźmy liczbę (dec)1023. najpierw musimy ją podzielić przez 16. Oczywiście będzie to dzielenie z resztą ;) Dzielimy tak do momentu, aż to co zostanie będzie mniejsze od 16. Do dzieła: 1023/16 = 63 R 15 63/16 = 3 R 15 3/15 = 0 R 3 //tutaj kończymy dzielenie ;) Teraz musimy przepisać reszty z dzielenia (zaczynając od dołu!), i zamienić liczby większe od 10 na znaki systemu hex. Nasza liczba będzie wtedy wyglądać następująco: 3(15)(15) //przed zamianą znaków 3FF //po zamianie 15 na F W ten sposób postępujemy z wszystkimi liczbami dziesiętnymi chcąc zamienić je na szesnastkowe. Hex na dziesiętny: Tutaj sprawa jest ułatwiona, gdyż jedyne co musimy zrobić, to pomnożyć i zsumować co trzeba ;) Należy tylko pamiętać że zapis szesnastkowy jest analogiczny do dziesiętnego, więc najmniejsze wartości są z prawej, a największe z lewej strony liczby. Przekształcamy w sposób następujący (liczba 3FF): znaczek ^ oznacza wykładnik potęgi. 3FF= 3(15)(15) = 3*16^2 + 15*16^1 + 15*16^0 = 3*256 + 15*16 + 15*1 = 768 + 240 + 15 = 1023. binarny na hex Najprościej jest skorzystać z tabelki którą zamieściłem powyżej. Rzadko się zdarza aby ktoś był zmuszony przeliczać liczby z systemu binarnego na szesnastkowy. Doświadczyłem tego tylko raz na matematyce, i tylko jako ciekawostkę :) . hex na binarny Patrz "binarny na hex" ;) A opornym, którzy nadal nie wiedzą jak się przelicza, proponuję korzystać z windowsowego kalkulatora z włączonym widokiem naukowym. Prościej się nie da :P Część 2. Kolory anglojęzycznie. Są one wykorzystywane także głównie do publikacji w Sieci. Okazuje się że nie tylko kobiety znają masę ciekawych kolorów (jak ecru na przykład ;) ). Informatycy także postanowili zaszaleć, czego wynikiem jest możliwość stosowania kolorów bez wpisywania ich kodu szesnastkowego, a jedynie nazwy. Sprawa ma się tak- mamy 16 standardowych kolorów, których nazwy możemy wklepać w kodzie i nie ma możliwości żeby nie zostały poprawnie wyświetlone. Należą do nich: aqua, black, blue, fuchsia, gray, green, lime, maroon, navy, olive, purple, red, silver, teal, white, oraz yellow. Oprócz nich, mamy jeszcze masę innych nazwanych kolorów (łącznie ponad 140), których możemy używać, ale nie mamy już gwarancji że zostaną wyświetlone przez przeglądarkę, albo że kolor będzie właściwy dla nazwy, więc lepiej korzystać z kodowania szesnastkowego. Dla ciekawskich: Spis wszystkich "nazwanych" kolorów, razem z ich wartością hex znajduje się pod tym adresem Część 3. Jako RGB. Zapis rgb wygląda następująco: rgb(rrr,ggg,bbb). Pozwala on na zapisanie koloru za pomocą liczb systemu dziesiętnego. Jest wykorzystywany głównie (chociaż rzadko) w kolorowaniu arkuszy stylów css. Tutaj też pierwszą wartością jest czerwony, drugą zielony a ostatni kolor to niebieski. Operujemy także na 24 bitach, więc wartości podobnie jak w hex mieszczą się między 0 a 255. Przykładowo, kolor czerwony zapisany w tej notacji będzie wyglądał tak- rgb(255,0,0). Część 4. inne modele kolorów. Tutaj kilka słów o innych zestawach kolorów, do których należą m.in. CMYK, HSB, LAB. -CMYK to zestaw czterech podstawowych kolorów farb drukarskich (Niebieskozielony- Cyan, Purpurowy -Magenta, Żółty- Yellow, blacK), czyli także tych których używamy w drukarkach. Niektórzy mogą zauważyć, że przez zmieszanie CMY w równych proporcjach można uzyskać czarny, więc wydawałby się on niepotrzebny. Jednakże skreślenie czarnego z listy tych kolorów jest: -po pierwsze nieopłacalne- trzykrotnie większe zużycie farb/tuszu/tonera żeby uzyskać czerń; -po drugie- niewykonalne w praktyce. Kolor uzyskany z CMY nigdy nie jest czarny, ale co najwyżej ciemnobrązowy z domieszką szarości (inaczej- paskudny ;) ). Używając zestawu CMYK musimy liczyć się z tym, iż niektórych odcieni (szczególnie jaskrawych) nie da się uzyskać. Programy do dtp mają nawet opcję symulacji kolorów niedrukowalnych. Należy także liczyć się z tym iż monitory komputerowe mogą niezbyt wiernie odwzorować kolory CMYK. Między innymi dlatego że CMYK wykorzystuje 32 bity dla zapisu kolorów, a system max. 24. -HSB jest interpretacją kolorów bliższą naszemu postrzeganiu. Mamy w nim bowiem coś takiego jak Hue (co można przetłumaczyć jako "kolor właściwy" ;) ), Saturation (czyli nasycenie- ile w naszym kolorze jest "koloru właściwego") oraz Brightness (jasność). Parametry H,S,oraz B mogą przyjmować odpowiednio wartości: -H: 0-360 (w stopniach, kolory zmieniają się od czerwonego przez zielony, niebieski z powrotem do czerwonego) -S: 0-100% (gdzie 0% to brak właściwego koloru) -B: 0-100% (0% to właściwie czerń, natomiast 100% to w zależności od parametru S albo biel, albo dany kolor) -LAB to model który do opisu kolorów wykorzystuje składową luminancji (lub jasności) oraz dwa składniki: "a" (zielony do czerwonego) i "b" (niebieski do żółtego). Część 5. Nie drażnijcie mnie ;) To tylko oświadczenie. Macie wiedzę. Od was zależy jak tę wiedzę wykorzystacie. Jeżeli zechcecie połączyć na swojej stronie www kolory #0000FF (tło) oraz #FF0000 (tekst), to znajdę was... Nie ukryjecie się :twisted: Edytowane 5 Sierpnia 2005 przez MareCeK Cytuj Udostępnij tę odpowiedź Odnośnik do odpowiedzi Udostępnij na innych stronach Więcej opcji udostępniania...
ajgon Opublikowano 4 Września 2005 Zgłoś Opublikowano 4 Września 2005 Troche nie rozumiem sensu tego artykulu, przeciez nawet jak ktos ma przed oczami kolor, to watpie zeby byl takim magikiem i przeliczyl go sobie na hexy (mowie tu o bardziej skomplikowanych kolorach, anizeli czerwony czy czarny :wink: ). Mysle natomiast, ze pomocne moga okazac sie linki do stron, na ktorych sa programiki dobierajace kolory na stronie (tak aby calosc sie nie gryzla, dla takich bezgusci artystycznych jak np. ja jest to wybawienie :) ). http://www.defencemechanism.com/color/ http://www.colormatch.dk/ http://wellstyled.com/tools/colorscheme2/index-en.html (IMHO, najfajniejszy) http://www.ficml.org/jemimap/style/color/wheel.html Cytuj Udostępnij tę odpowiedź Odnośnik do odpowiedzi Udostępnij na innych stronach Więcej opcji udostępniania...
m4r Opublikowano 5 Września 2005 Zgłoś Opublikowano 5 Września 2005 To co podałeś, miało być opisane w następnej części- której, niestety, na razie z braku czasu nie jestem w stanie napisać i wrzucić tutaj po wcześniejszym debugowaniu. A co do przeliczania na hex... znam takich co potrafią. Tylko trzeba naprawdę długo siedzieć nad tym ;) Podobnie jak sieciowcy, którzy w głowach liczą maski dla podsieci... kwestia praktyki. Cytuj Udostępnij tę odpowiedź Odnośnik do odpowiedzi Udostępnij na innych stronach Więcej opcji udostępniania...
docxxx Opublikowano 26 Września 2005 Zgłoś Opublikowano 26 Września 2005 Używając zestawu CMYK musimy liczyć się z tym, iż niektórych odcieni (szczególnie jaskrawych) nie da się uzyskać. Programy do dtp mają nawet opcję symulacji kolorów niedrukowalnych. Należy także liczyć się z tym iż monitory komputerowe mogą niezbyt wiernie odwzorować kolory CMYK. Między innymi dlatego że CMYK wykorzystuje 32 bity dla zapisu kolorów, a system max. 24. Niezupelnie. CMYK tez jest kolorem 24 bitowym, ale pozwala na wybor koloru z palety 32bitowej (a to jest roznica). Poza tym (piszac w wielkim skrocie) to RGB jest 'be' a CMYK 'cacy'. Do drukowania uzywa sie tylko palety CMYK, nigdy RGB. Należy także liczyć się z tym iż monitory komputerowe mogą niezbyt wiernie odwzorować kolory CMYK. Bo monitor pracuje w trybie RGB (czyli wyswietla kolory) a 'oko' (czyli to co postrzegamy) w trybie CMYK (oko odbiera barwy odbite a nie wyswietlane). Jest tez cos takiego jak probnik kolorow (np. Pantone). Kiedys jak chcialo wydrukowac sie np. kolor 'czerwony' to drukarnia drukowala czerwony 'na oko'. Ale powiedzmy ze chcemy uzyskac kolor 12:34:34:78 i wtedy nie mozna juz tego robic 'na oko'. Firma udostepniaja probniki drukuje te kolory na specjalnym papierze i teraz: chcemy uzyskac kolor 'jakis tam'. Patrzymy do tego probnika i widzimy ze ma parametry 56:00:12:120. Wpisujemy je do programu w ktorym pracujemy i mimo tego ze kolor jest inny na ekranie (czasem roznica jest bardzo widoczna) to w druku wychodzi taki jaki chcielismy uzyskac. To tyle :rolleyes: Cytuj Udostępnij tę odpowiedź Odnośnik do odpowiedzi Udostępnij na innych stronach Więcej opcji udostępniania...
kamilo23 Opublikowano 27 Stycznia 2007 Zgłoś Opublikowano 27 Stycznia 2007 Kurde spadł mi ten temat z nieba bo szukałem czegoś takiego, dobrze że go zobaczyłem. Dzięki wielkie MareCeK :) Cytuj Udostępnij tę odpowiedź Odnośnik do odpowiedzi Udostępnij na innych stronach Więcej opcji udostępniania...