CLR: .Net / Mono / Boo / Otros CLR > VB .NET

 Rgb & Hexadecimal

(1/1)

Soultaker:
Hola una pregunta como se puede hayar el rgb de un color, lo que quiero hacer es que en un objeto picture coloque una imagen cualquiera y luego al hacer clic me mande el rgb de donde hice clic, y tambien me gustaria hayar el hexadecimal del color, si alguien conoce alguna forma a ver si me la pueden responder. Thank you so much.

JuanK:
depende de la densidad del color..
es decir depende si es de 8, 16, 24, 32, 15 bits

para el caso de 24 bits es asi:

Dado que el color tiene las componentes RGB cada byte representaria un componente as:
ejemplo para color blanco

--- Código: Text ---    R        G        B11111111-11111111-11111111  
cada byte puede ser representado en con dos numeros hexa :

ejemplo para color blanco

--- Código: Text ---     R         G         B1111.1111-1111.1111-1111.1111 F     F    F    F    F   F  =0xFFFFFF = 16'777.215  
De este modo  seria el color morado:

--- Código: Text ---     R         G         B1111.1111-0000.0000-1111.1111 F    F     0   0     F   F  =0xFF00FF = 16'711.935  
Esta es la teoria... en la practica no existen tipos de datos de 24 bits.. pero en general un dato tipo int es de 32 bits asi que para el ejemplo del morado seria asi:
0x00FF00FF

Logicamente para cada tipo de color hay variantes, asi pues en el caso del color de 32 bits el primer byte representa el canal alfa, y en el color de 16 bits se reparte todo en grupos de 5 bytes y uno adicional que se me olvido para que era  :blink:  y asi segun el tipo de color.

sergiotarrillo:
pero como seria el programa,.... Facil seria capturar la posicion donde hizo click, pero sacar ese patron y capturar su color, ...... lo veo un poco tranca, tendrias que sacar solo ese punto, lo que propondria seria copiar el color, y guardarlo.... para despues usarlo...

Navegación

[0] Índice de Mensajes

Ir a la versión completa