Foros del Web » Creando para Internet » Flash y Actionscript »

¿Cómo hacer un mc escalado no proporcional y otro si proporcional al tamaño página?

Estas en el tema de ¿Cómo hacer un mc escalado no proporcional y otro si proporcional al tamaño página? en el foro de Flash y Actionscript en Foros del Web. Hola! Estoy desesperado, please help!!! tengo un problemón: Necesito hacer en una misma pelicula: - un fullscreen - un mc (imágen de fondo) que se ...
  #1 (permalink)  
Antiguo 11/08/2009, 14:22
 
Fecha de Ingreso: noviembre-2008
Mensajes: 17
Antigüedad: 15 años, 5 meses
Puntos: 0
¿Cómo hacer un mc escalado no proporcional y otro si proporcional al tamaño página?

Hola!
Estoy desesperado, please help!!!
tengo un problemón:

Necesito hacer en una misma pelicula:
- un fullscreen
- un mc (imágen de fondo) que se escale a la resolución de cada monitor (se deformará)
- un mc que se escale proporcionalmente a la altura del monitor (sin deformartse)
- todo centrado


Llevo días buscando y buscando en la web pero lo único que he encontrado és como hacer el fullscreen con el fondo proporcional, pero me falla que el otro mc se escale sin deformar:

Código:
Stage.align = "TL";
Stage.scaleMode = "noScale";
fscommand("fullscreen", true);
var T:String = "easeoutexpo";

fondo._x = 0;
fondo._y = 0;
intro._x = 0;
intro._y = 0;

var stageL:Object = new Object();
stageL.onResize = function() {
	fondo._width = Stage.width;
    fondo._height = Stage.height;
	intro._width = Stage.width;
	intro._height = Stage.height;
    // optional to center instance of mainContent_mc
	fondo._x = Stage.width/mainContent_mc._width;
    fondo._y = Stage.height/mainContent_mc._height;

intro._y = fondo._y+fondo._height/2-intro._height/2;
intro._x = fondo._x+fondo._width/2-intro._width/2;
};
Stage.addListener(stageL);
stageL.onResize();
el mc "fondo" es el backgrownd que se escala y el mc "intro" es el que se escala pero tendria que mantener sus proporciones
(En AS2 please)

Estoy desesperado, please help!!!
Mil gracias de antemano

Bernat
  #2 (permalink)  
Antiguo 11/08/2009, 21:12
 
Fecha de Ingreso: abril-2001
Ubicación: Puerto Montt
Mensajes: 89
Antigüedad: 23 años
Puntos: 1
Respuesta: ¿Cómo hacer un mc escalado no proporcional y otro si proporcional al tamañ

A ver, intentare ayudarte, lo que yo creo que puedes hacer para dar el tamaño maximo sin deformar la figura es calcular el valor maximo (saber si es el ancho es el alto y luego calcular el siguiente valor proporcional con una regla de tres, para eso usas unas variables, a ver si te puedo ayudar un poco con el codigo, y me diras si te sirve... te agregue solo la parte de redimensionar el intro y que no se te deforme, pruebalo que yo no lo probe, lo hice a ojo, pero mas o menos esa es la idea tu puedes pulirla


Stage.align = "TL";
Stage.scaleMode = "noScale";
fscommand("fullscreen", true);
var T:String = "easeoutexpo";

fondo._x = 0;
fondo._y = 0;
intro._x = 0;
intro._y = 0;

var stageL:Object = new Object();
stageL.onResize = function() {
fondo._width = Stage.width;
fondo._height = Stage.height;

// aqui haremos los calculos, para eso creamos una variables con las medidas originales y otro con las medidas finales:
ancho1 = intro._width;
alto1 = intro._height;
ancho2 = Stage.width;
alto2 = (ancho2 * alto1) / ancho1;

// si el nuevo valor del alto, es mayor que el valor maximo de la pantalla, recalculamos el tamaño poniendo el alto como maximo
if (alto2 > Stage.height) {
alto2 = Stage.height;
ancho2 = (ancho1 * alto2) / alto1;

}
// aqui asignamos los valores que calculamos al intro

intro._width = ancho2;
intro._height = alto2;

// optional to center instance of mainContent_mc
fondo._x = Stage.width/mainContent_mc._width;
fondo._y = Stage.height/mainContent_mc._height;

intro._y = fondo._y+fondo._height/2-intro._height/2;
intro._x = fondo._x+fondo._width/2-intro._width/2;
};
Stage.addListener(stageL);
stageL.onResize();
  #3 (permalink)  
Antiguo 12/08/2009, 08:25
 
Fecha de Ingreso: noviembre-2008
Mensajes: 17
Antigüedad: 15 años, 5 meses
Puntos: 0
Respuesta: ¿Cómo hacer un mc escalado no proporcional y otro si proporcional al tamañ

Mil gracias!!!!
ha funcionado a la perfección!!!

de verdad que muchas gracias, me has sacado de un apuro!!
  #4 (permalink)  
Antiguo 22/01/2010, 06:00
 
Fecha de Ingreso: enero-2010
Mensajes: 1
Antigüedad: 14 años, 3 meses
Puntos: 0
Respuesta: ¿Cómo hacer un mc escalado no proporcional y otro si proporcional al tamañ

Hola Amigos!

Necesito saber si hay alguna forma de decirle al swf que se adapte al monitor hasta cierta medida....es decir, que escale sólo cuando el escalado es a menor resolución no a mayor....


el código que tengo es el siguiente:


Stage.showMenu = false;

if ((Stage.width<=1260) && (Stage.height<=745)) {
fscommand("fullscreen", true);
}
else {
Stage.scaleMode = "noScale";

fscommand("fullscreen", false);
Stage.width = 1260;
Stage.height = 745;
}

trace("ancho "+Stage.width+" alto "+Stage.height);

Stage.scaleMode = "Scale";
Stage.align = "T";
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 19:00.