.net system.drawing

.net - ¿Por qué DarkGray es más ligero que Gray?



system.drawing (3)

Curiosidad simple aquí, teñida con algunas preocupaciones prácticas porque de vez en cuando me atrapa.

¿Cómo es que Color.DarkGray es más ligero que Color.Gray ?


Me gustaría citar el debate de Tim Sneath sobre eso,

Estos colores en realidad no se originan en HTML` ; datan aún más atrás que en el Sistema X Window que se originó en los sistemas UNIX. La especificación HTML define dieciséis colores nombrados que se asignan a los dieciséis colores básicos presentes en la paleta EGA, pero los navegadores más antiguos como Mosaic también admiten cualquiera de los otros colores nombrados X11, en función de su representación de color como se define en X. Desafortunadamente, algunos de los dieciséis colores con nombre original tienen representaciones diferentes a los equivalentes X11, por ejemplo, el verde se representa en X11 en este color, mientras que en HTML se representa en este color. El desafortunado resultado es que Gray se define como # 808080 en HTML, pero DarkGray se representa como # A9A9A9, lo que significa que están en el camino equivocado. Como WPF permite los mismos colores nombrados que HTML para la compatibilidad, el resultado es que las mismas idiosincrasias se llevan adelante. (Puede encontrar más información sobre el conjunto completo de nombres de colores X11 y sus representaciones en Wikipedia).

Es por eso que el autor también afirma que es mejor usar el hexadecimal o scRGB para representar los colores.

Por lo tanto, mi recomendación es, en general, utilizar las representaciones de color hexadecimal o scRGB siempre que sea posible, o ¡podría sorprenderse por los colores que elige y que no coinciden con sus expectativas!


Wikipedia tiene información sobre el tema . Parece que muchas de las definiciones de color nombradas provienen del Sistema X Windows. En X, "Gris" está más cerca de "Plata". Sin embargo, el W3C definió Gray (¿más apropiadamente?) Como RGB 50%.

Aquí hay más Wikipedia sobre el tema:

Tal vez lo más inusual de los choques de color es el caso de "gris". En HTML, "gris" está específicamente reservado para 127,127,127. Sin embargo, en X11, "gris" se asignó a 190,190,190 (75%), que está cerca de HTML "silver", y tenía "lightgray" en (211,211,211) y "darkgray" en (169,169,169) contrapartes. Esto resultó en "gris" de HTML, al 50%, siendo significativamente más oscuro que "darkgray", en un 66%. El W3C también definió un color que es igual al "verde" de X11, pero lo llamó "lima".

Palabras clave de color 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)


W3C Grays
Nueve nombres asignados donde los valores R, G y B son numéricamente iguales: