Dlaczego DarkGray jest jaśniejszy niż Gray?


182

Prosta ciekawość tutaj, zabarwiona pewnymi praktycznymi obawami, ponieważ czasami mnie to przyłapuje.

Dlaczego Color.DarkGrayjest lżejszy niż Color.Gray?


16
Jeśli chcesz DarkGray, wybierz DimGray :)
leppie

To prawda. Tak zwany Grayto 0x80 (× RGB) kontra DimGray(lub powinien to być „Szary”) przy 0x69 (× RGB).
Glenn Slayden,

2
Brzmi dla mnie jak szary obszar. ;)
Neil B

Odpowiedzi:


231

Wikipedia ma pewne informacje na ten temat . Wygląda na to, że wiele nazwanych definicji kolorów pochodzi z systemu X Windows. Na X „Gray” jest w rzeczywistości bliższy „Silver”. Jednak W3C zdefiniował Gray (bardziej odpowiednio?) Jako RGB 50%.

Oto kilka Wikipedii na ten temat:

Być może najbardziej niezwykłym kolizją kolorów między X11 a W3C jest przypadek „Gray” i jego wariantów. W języku HTML „szary” jest specjalnie zarezerwowany dla trypletu 128 (50% szary). Jednak w X11 „szary” został przypisany do 190 trypletu (74,5%), który jest zbliżony do W3C „Srebrny” przy 192 (75,3%) i miał „Jasnoszary” przy 211 (83%) i „Ciemnoszary „przy 169 (66%) odpowiednikach. W rezultacie połączona lista kolorów CSS 3.0, która dominuje obecnie w sieci, daje „Ciemnoszary” jako znacznie jaśniejszy ton niż zwykły „Szary”, ponieważ „Ciemnoszary” pochodzi od X11 - ponieważ nie istniał w HTML ani CSS poziom 1 - podczas gdy „Gray” pochodzi od HTML. Nawet w obecnej wersji CSS 4.0 ciemnoszary nadal mają jaśniejszy odcień niż szary.

Kolorowe słowa kluczowe W3C :

DimGray    '#696969'  (105,105,105)  
Gray       '#808080'  (128,128,128)
DarkGray   '#A9A9A9'  (169,169,169)  //equal to X11 DarkGray
Silver     '#C0C0C0'  (192,192,192)  //close to X11 Gray (190,190,190)
LightGray  '#D3D3D3'  (211,211,211)  //equal to X11 LightGray
Gainsboro  '#DCDCDC'  (220,220,220)

„szary” to nie 127, 127, 127, to 128, 128, 128. Może zaktualizować wycenę Wikipedii?
użytkownik

Prostą sztuczką, którą zwykle stosuję, gdy nie mogę znaleźć odpowiedniego odcienia, jest po prostu użycie: # 222 (bardzo ciemny) # 333 (ciemny) # 444 (średni) itp. Uważam, że jest prawie tak samo odróżniający jak 1, 2, 3
David

1
Sprzęt do wyświetlania był inny w dawnych czasach, kiedy wybrali „Gray” i wydali dużo pieniędzy. SGI była wówczas dominującą siłą, ich wyświetlacze były korygowane gamma. Obecny sprzęt klasy konsumenckiej nie jest, dlatego # 808080 wygląda tak ciemno. Obowiązkowy link do Wikipedii .
Hans Passant,

Ale jeśli darkgrayjest ciemniejszy silver, dlaczego nie jest nazwany darksilver?
Rémi Rousselet


9

Chciałbym zacytować dyskusję Tima Sneatha na ten temat ,

Te kolory tak naprawdę nie pochodzą z HTML` - datują się jeszcze dalej niż w X Window System, który powstał w systemach UNIX.Specyfikacja HTML definiuje szesnaście nazwanych kolorów, które odwzorowują na podstawowe szesnaście kolorów obecnych w palecie EGA, ale najwcześniejsze przeglądarki, takie jak Mosaic, również obsługiwały dowolny z innych nazwanych kolorów X11, na podstawie ich reprezentacji kolorów, jak zdefiniowano w X. Niestety, niektóre spośród oryginalnych szesnastu nazwanych kolorów ma różne reprezentacje w stosunku do odpowiedników X11, na przykład zielony jest reprezentowany w X11 w tym kolorze, podczas gdy w HTML jest reprezentowany w tym kolorze. Niefortunnym rezultatem jest to, że Gray jest zdefiniowany jako # 808080 w HTML, ale DarkGray jest reprezentowany jako # A9A9A9, co oznacza, że ​​są one niewłaściwe. Ponieważ WPF zezwala na kompatybilność tych samych nazwanych kolorów co HTML, wynik jest taki, że przenoszą się te same osobliwości.

Dlatego autor stwierdza również, że lepiej jest użyć szesnastki lub scRGB do reprezentowania kolorów.

Dlatego zalecam, aby w miarę możliwości używać reprezentacji kolorów szesnastkowych lub scRGB , w przeciwnym razie możesz być zaskoczony wybranymi kolorami, które nie spełniają Twoich oczekiwań!

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.