Hola, aqui te mando mis funcioncitas para convertir de HEX a DECIMAL y de
DECIMAL A HEX:
dec2hex = function(col){
hexNum = col.toString(16);
if (col<16) {
hexNum = "0"+hexNum;
}
return hexNum = hexNum.toUpperCase();
}
hex2dec = function(col){
decNum = parseInt(col,16);
return decNum;
}
Pero yo por norma uso una clase que me curr� hace tiempo :
MovieClip.prototype.fastRGB = function(r, g, b) {
if (!isNaN(r) && !isNaN(g) && !isNaN(b) && r<256 && r>=0 && g<256 && g>=0
&& b<256 && b>=0) {
r = r<<16;
g = g<<8;
b = b;
rgb = r|g|b;
col = new Color(this);
col.setRGB(rgb);
}
}
MovieClip.prototype.fastTransRGBA = function(ra,rb,ga,gb,ba,bb,aa,ab){
if(arguments.length<8){
return false;
}
var x=0;
while(x<arguments.length){
if(isNaN(arguments[x++])){
return false;
}
}
if (ra<=100 && ga<=100 && ba<=100 && aa<=100 && ra>=-100 && ga>=-100 &&
ba>=-100 && aa>=-100 && rb<=255 && gb<=255 && bb<=255 && ab<=255 && rb>=-255
&& gb>=-255 && bb>=-255 && ab>=-255){
thisColor={ra:ra,rb:rb,ga:ga,gb:gb,ba:ba,bb:bb,aa:aa,ab:ab};
col = new Color(this);
col.setTransform(thisColor);
return true;
}else{
return false;
}
}
MovieClip.prototype.fastTransRGB = function(ra,rb,ga,gb,ba,bb){
if(arguments.length<6){
return false;
}
var x=0;
while(x<arguments.length){
if(isNaN(arguments[x++])){
return false;
}
}
if (ra<=100 && ga<=100 && ba<=100 && ra>=-100 && ga>=-100 && ba>=-100 &&
rb<=255 && gb<=255 && bb<=255 && rb>=-255 && gb>=-255 && bb>=-255){
thisColor={ra:ra,rb:rb,ga:ga,gb:gb,ba:ba,bb:bb,aa:100,ab:255};
col = new Color(this);
col.setTransform(thisColor);
return true;
}else{
return false;
}
}
clip.fastRGB(255,0,0);
clip.fastTransRGBA(50,200,-100,200,100,200,50,255);
si quieres pueder verlo colgado en proto.layer51:
http://proto.layer51.com/d.aspx?f=708
ala, saludos :)
---------- Original Message -----------
From: "Felipe Alonso" <[EMAIL PROTECTED]>
To: "asn" <[EMAIL PROTECTED]>
Sent: Wed, 19 Nov 2003 20:23:50 +0100
Subject: [ASNativos] transiciones de color formato 0x000000
> Buenas tardes/noches
>
> Estoy trabajando en un men� que var�a de color seg�n presione un
> bot�n u otro.
>
> Para definir los colores uso RGB y color hexadecimal (0x000000)
>
> Las transiciones de color y su aplicaci�n en el caso de R, G, B est�n
> solucionada, compruebo el valor inicial de R y sumo o resto hasta el
> valor final de R. As� con cada color (RGB). Los cambios los voy
> aplicando al momento, de esa forma consigo una transici�n suave
> entre tonos.
>
> Los problemas me llegan al usar colores hexadecimales (creo que se llaman
> as�), esos de 0xFFFFFF.
>
> Con RGB no tengo problemas por es sumar o restar al valor inicial hasta
> llegar al valor final, pero cuando intento hacer la transici�n de colores
> hexadecimales, se me hace cuesta arriba por no decir imposible, ya
> que puedo sumar o restar n�meros pero no letras.
>
> He mirado en la ayuda y he visto algo pero no acabo de encontrar la
> soluci�n.
>
> Esa soluci�n la tengo en un libro del que no dispongo en estos momentos.
> Creo que era algo como pasar hexadecimal a formato RGB, realizar la
> suma o resta y luego hacer la operaci�n inversa.
>
> Otro de los problemas es que el color hexadecimal ha de ser exacto porque
> estoy trabajando con colores corporativos, motivo por el cual no me valen
> los tonos aprox.
>
> �Me podr�ais dar una pista?
>
> Gracias
>
> Felipe Alonso
>
> <!-------------------------------
> Lista ASNativos:
> subscripciones/desubscripciones
> http://www.sidedev.net/asnativos
> -------------------------------->
------- End of Original Message -------
<!-------------------------------
Lista ASNativos:
subscripciones/desubscripciones
http://www.sidedev.net/asnativos
-------------------------------->