Esto me ha intrigado durante bastante tiempo.
¿Alguien sabe el algoritmo que utiliza Windows 7 Aero para determinar el color que se utilizará como el resaltado de desplazamiento rápido en los botones de la barra de tareas para las aplicaciones que se ejecutan actualmente?
Definitivamente se basa en el ícono de la aplicación, pero no puedo ver un patrón específico de dónde está obteniendo el valor de color.
Que no parece ser algo de lo siguiente:
- Un valor de color promedio de todo el ícono, de lo contrario, se volvería marrón
todo el tiempocon íconos multicolores como Chrome. - El color que más se usa en la imagen, de lo contrario, obtendría amarillo para el ícono de SQL Server Management Studio (sexto desde la izquierda). Además, el icono de Chrome utilizaba rojo, verde y amarillo en igual medida.
- Un color ubicado en ciertas coordenadas de píxeles dentro del icono, porque Chrome es rojo, lo que indica la parte superior del icono, y Notepad ++ (segundo desde la derecha) es verde, lo que indica la parte inferior del icono.
Hice esta pregunta en ux.stackoverflow.com y se cerró como fuera de tema, pero alguien respondió con lo siguiente:
Como lo describe Raymond Chen en este artículo del blog de MSDN :
Algunas personas preguntan cómo se hace. Realmente no es nada especial. El código solo busca el color predominante en el icono. (Y, dado que los diseñadores visuales son fanáticos de este tipo de cosas, el negro, el blanco y los tonos de gris no se consideran "colores" a los efectos de este cálculo).
Sin embargo, no estaba realmente satisfecho con esa respuesta porque no explica cómo se calcula el color "predominante". Seguramente en el icono de SQL Management Studio, el color predominante, al menos para mis ojos, es el amarillo. Sin embargo, lo más destacado es el verde. Quiero saber, específicamente, cuál es el algoritmo.
An average colour value from the entire icon, otherwise you would get brown all the time.
Eso no tiene sentido. Por ejemplo, ¿cómo los iconos de Skype , símbolo del sistema o µTorrent promedian a marrón? ಠ_ ఠ (La última vez que realicé ingeniería inversa de uno de los algoritmos de cálculo de color de Windows, me tomó varios años de atención intermitente y muchos tipos diferentes de trabajo para finalmente resolverlo. Parece que podría terminar pirateando esto uno en algún momento.)