Почему DarkGray легче, чем Грей?

Простое любопытство здесь, с некоторыми практическими проблемами, потому что я иногда это поймал.

Как получилось Color.DarkGray легче Color.Gray?

Ответ 1

Википедия имеет некоторую информацию по этому вопросу. Похоже, что многие названные определения цвета взяты из X Windows System. На X "Серый" на самом деле ближе к "Серебряному". Однако W3C определил серый (более подходящий?) Как RGB 50%.

Здесь еще несколько Wikipedia по теме:

Возможно, самый необычный цвет столкновение происходит в случае "серого". В HTML, "серый" специально зарезервирован для 127 127 127. Однако в X11, "серый" был присвоен 190 190 190 (75%), что близко к HTML "серебро", и "lightgray" в (211 211 211) и "темный" в (169,169,169). Эта привел к тому, что HTML "серый" , на 50% на самом деле значительно темнее чем "темный", на 66%. W3C также определенный цвет, равный X11 "зеленый", но назвал его "известь".

W3C color ключевые слова:

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)

Ответ 2

Я хотел бы процитировать обсуждение Тима Снейта относительно этого,

Эти цвета на самом деле не происходят из HTML` - они еще сохраняют дальше, чем в X Window System, созданной в системах UNIX. Спецификация HTML определяет шестнадцать названных цветов, которые отображают основные шестнадцать цветов, присутствующих в палитре EGA, но самые ранние браузеры, такие как Mosaic, также поддерживали любой из других названных цветов X11, основываясь на их цветовом представлении, как определено на X. К сожалению, некоторые из первоначальных шестнадцати именованные цвета имеют разные представления для эквивалентов X11, например, Green представлен в X11 в этом цвете, тогда как в HTML он представлен в этом цвете. Несчастливым результатом является то, что Gray определен как # 808080 в HTML, но DarkGray представлен как # A9A9A9, а это значит, что они неправильны. Поскольку WPF допускает одинаковые именованные цвета, такие как HTML для совместимости, результат состоит в том, что те же самые особенности переносятся вперед. (Более подробную информацию о полном наборе имен цветов X11 и их представлений можно найти в Википедии).

Вот почему автор также заявляет, что лучше использовать hex или scRGB для представления цветов.

Поэтому моя рекомендация заключается в том, что, как только это возможно, использовать шестнадцатеричные или scRGB цветовые представления, или вы можете быть удивлены цветами, которые вы не соответствуете вашим ожиданиям!

Ответ 3

W3C Grays
Девять назначенных имен, где значения R, G и B численно равны:

введите описание изображения здесь