Comunidad de diseño web y desarrollo en internet online

[URGE] Problema con diagramación líquida

Citar            
MensajeEscrito el 10 Feb 2011 04:56 pm
Hola a todos, me es muy urgente solucionar un temita... os explico desde el principio (y brevemente) para ser lo más clara posible.

- Si yo en una peli flash sin nada, meto una foto, y al publicarla, le digo que el html quiero que las dimensiones sean en porcentaje 100% . Entonces al publicarla y ver el html, la foto se agrande o disminuye según el tamaño del navegador (siempre conservando las proporciones de la foto).

- Bien, pues eso es lo que quiero en una galería, el PROBLEMA está en que cuándo empiezo a montar el resto de elementos (menú, etc...) y lo hago con la diagramación líquida (para que un menú esté siempre a la izqda, otro siempre a la derecha del navegador etc...), resulta que la foto ya no obedece lo del porcentaje, y se queda fija en su tamaño original.

- CREÍ que se resolvería (y debe ser así, pero de otra manera que no sé cuál es), entonces añadí esta foto como un mc a la diagramación líquida con este code:

Código ActionScript :

   foto_mc._height = (Stage.height-foto_mc._height);
   foto_mc._width = (Stage.width-foto_mc._width);


Calculé que diciéndole al flash q tanto el ancho como el alto de la foto, debería ser como el ancho y alto del navegador menos las dimensiones de la foto, pensando que así ya se debe de ver correctamente. Pues no... no lo hace, se estira si amplio el navegador y lo mismo con el alto y nunca se ve entera la foto siempre se corta por el alto.

¿Alguien sabe como se hace entonces? Lo necesito saber cuánto antes... gracias.

Por Hapki

Claber

268 de clabLevel



 

firefox
Citar            
MensajeEscrito el 10 Feb 2011 05:44 pm
Hola Hapki

Modifica primero el ancho (acá haces el cálculo para saber cuanto habrá que escalarla), y el alto va a ser la proporción de su escala (foto_mc._scaleY = foto_mc._scaleX),

Después verifica si el alto sobrepasa el del stage, en caso de que así sea, haz lo contrario, modifica el alto, y el ancho en proporción a su escala...

Por nasho

Claber

908 de clabLevel

1 tutorial

Genero:Masculino  

Web Developer

firefox
Citar            
MensajeEscrito el 10 Feb 2011 06:51 pm
Ñoss... me he perdido... a ver he puesto ésto:

Código ActionScript :

   foto_mc._width = (Stage.width-foto_mc._width);
   foto_mc._scaleY = foto_mc._scaleX;


Pero sigo con el mismo problema (¿tengo q quitar el height no?) ... uf... los cálculos no se me dan muy bien grrrr... y no sé como verificar lo del alto...

Ayudame porfavor... :(

Por Hapki

Claber

268 de clabLevel



 

firefox
Citar            
MensajeEscrito el 10 Feb 2011 06:57 pm
Emm me equivoque en as2 es alrevés :p _Xscale, _Yscale

Código ActionScript :

foto_mc._width = (Stage.width-100); 
foto_mc._Yscale = foto_mc._Xscale;

restarle el tamaño de la imagen al del stage creo que la haría muy chica


La comprobación con un if... si el alto de la imagen es mayor al alto del stage menos un margen, entonces... haces el cálculo con el alto...

Por nasho

Claber

908 de clabLevel

1 tutorial

Genero:Masculino  

Web Developer

firefox
Citar            
MensajeEscrito el 10 Feb 2011 08:55 pm
Vale... pero si pongo el if... ya no me vuelve a respetar las proporciones de la foto, y se me estira a lo largo y ancho deformando la foto :( . Ésto es lo que tengo puesto:

Código ActionScript :


   foto_mc._x = (Stage.width/2)-(foto_mc._width/2);
   foto_mc._y = (Stage.height/2)-(foto_mc._height/2);
   foto_mc._width = (Stage.width-700);  
   foto_mc._Yscale = foto_mc._Xscale;
   
   if((foto_mc._height>Stage.height)-100){
      foto_mc._height = (Stage.height)-100;
        }


¿Entonces? grrrr :cry:

Por Hapki

Claber

268 de clabLevel



 

firefox
Citar            
MensajeEscrito el 10 Feb 2011 09:10 pm
casi...

Código ActionScript :

foto_mc._width = (Stage.width-700);   
foto_mc._Yscale = foto_mc._Xscale; 
    
if(foto_mc._height>(Stage.height-100)){ 
      foto_mc._height = (Stage.height)-100; 
      foto_mc._Xscale = foto_mc._Ycale; 
} 

foto_mc._x = (Stage.width/2)-(foto_mc._width/2); 
foto_mc._y = (Stage.height/2)-(foto_mc._height/2);

Por nasho

Claber

908 de clabLevel

1 tutorial

Genero:Masculino  

Web Developer

firefox
Citar            
MensajeEscrito el 10 Feb 2011 09:23 pm
Casi...

El alto perfecto, pero el ancho no me lo respeta, la foto se estira y deforma si amplio el navegador a lo ancho... he probado a meterle otro if más para el width a ver si se solucionaba, pero no... se sigue deformando... (ésto es lo que le añadí).

Código ActionScript :

if(foto_mc._width>(Stage.width-100)){  
      foto_mc._width = (Stage.width)-100;  
      foto_mc._Yscale = foto_mc._Xcale;  
}  

Por Hapki

Claber

268 de clabLevel



 

firefox
Citar            
MensajeEscrito el 10 Feb 2011 09:33 pm
mas bien cambiando algunas mayusculas

Código ActionScript :

   foto_mc._width = (stage.width - 700);
   foto_mc._yscale = foto_mc._xscale;

   if (foto_mc._height > (stage.height - 100)) {
      foto_mc._height = stage.height - 100;
      foto_mc._xscale = foto_mc._yscale;
   }

   foto_mc._x = (stage.width / 2) - (foto_mc._width / 2);
   foto_mc._y = (stage.height / 2) - (foto_mc._height / 2);

Por nasho

Claber

908 de clabLevel

1 tutorial

Genero:Masculino  

Web Developer

firefox
Citar            
MensajeEscrito el 10 Feb 2011 09:51 pm
Si copio y pego tal cuál me lo das, no me funciona, pero cambiando de nuevo algunas mayúsculas, y bajando el 700 ese a 100 como al principio me decías, si me funciona todo correcto, de modo q el code queda así:

Código ActionScript :

 foto_mc._width = (Stage.width-100);    
foto_mc._Yscale = foto_mc._Xscale;  

     if (foto_mc._height > (Stage.height - 100)) { 
      foto_mc._height = Stage.height - 100; 
      foto_mc._xscale = foto_mc._yscale; 
   }    

 
foto_mc._x = (Stage.width/2)-(foto_mc._width/2);  
foto_mc._y = (Stage.height/2)-(foto_mc._height/2); 


Ahora ya funciona! Gracias Nasho!! Me has salvado! :D ...

Por Hapki

Claber

268 de clabLevel



 

firefox

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.