RE:Como maneja los colores dephi
El byte de orden más alto se usa para indicar la forma en que se interpretan los valores BGR-256 de los otros tres bytes en un dispositivo que no llega a la resolución color de 24 bits.
Si el byte de orden más alto es entonces 0, significa que se tomará el color más cercano en la paleta del sistema, si es 1, se tomará el color más cercano en la paleta realizada actual, y si es 2, se tomará el color más cerano en la paleta lógica del contexto de dispositivo actual. Otro valor creo que indica que estamos ante la presencia de un color de Windows (como clBtnFace).
En cuanto al sistema BGR-256, significa que son tres bytes (valores de 0 a 255) que representan la intensidad de los tres colores primarios de la luz (azul, verde y rojo en ese orden para el BGR, mientras que es rojo, verde y azul para el RGB).
Por ejemplo los valores BGR(250, 250, 255) te darán un color rosado muy claro. Esto es así porque el rojo está al máximo, y el verde y el azul valen lo mismo y están muy cerca, por lo que ese rojo tiene baja saturación (o sea que está muy contaminado de "gris" por lo que no es un rojo "puro" o "saturado") y los valores altos indican alta luminosidad (cercanía al blanco) por lo que el color es como una mezcla de rojo intenso con un gris casi blanco, y el resultado será un rosado muy claro. Para entender el sistema, busca "RGB color system" en la Red...
Ernesto