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

limitar tamaño imagen cargada

Estas en el tema de limitar tamaño imagen cargada en el foro de Flash y Actionscript en Foros del Web. Hola, leí en este foro como cargar una imagen .jpg de forma externa, y lo hice y salió bien, el problema es que después, si ...
  #1 (permalink)  
Antiguo 09/10/2005, 12:50
 
Fecha de Ingreso: diciembre-2003
Mensajes: 77
Antigüedad: 14 años
Puntos: 0
limitar tamaño imagen cargada

Hola, leí en este foro como cargar una imagen .jpg de forma externa, y lo hice y salió bien, el problema es que después, si vas cambiando la imagen y metes otra con distinto tamaño no queda bien en la web, tienes primero, antes que subirla al servidor, retocarla con photoshop para hacerla más pequeña, por eso lo que decidí fue que la web cargue una foto y si esta es superior a 200x200 pixels, la escale a este tamaño y si es inferior que la deje igual. Así que volví a buscar en el foro y lo que encontre me sirvió en parte, porque lo que hago es siempre escalar la imagen a un porcentage y yo lo que quiero es que me limite el tamaño de la foto en pixels. No se si me explico pero utilizo un clip de película con este código:

alfa = function (clip)
{
this.createEmptyMovieClip("loop", 3);
loop.onEnterFrame = function ()
{
clip._alpha = clip._alpha + 10;
if (clip._alpha >= 100)
{
delete loop["onEnterFrame"];
} // end if
};
};
this.createEmptyMovieClip("cargador", 1);
this.createTextField("porcentaje", 2, 10, 10, 200, 16);
this.cargador._x = 0;
this.cargador._y = 0;
this._width=175;
this._height=25;
this.cargador.loadMovie("foto2.jpg");
this.cargador._alpha = 0;
this.onEnterFrame = function ()
{
this.cargador.percent = this.cargador.getBytesLoaded() / this.cargador.getBytesTotal() * 100;
if (!isNan(this.cargador.percent))
{
this.porcentaje.text = Math.round(this.cargador.percent) + " %";
} // end if
if (this.cargador.percent == 100)
{
alfa(this.cargador);
this.porcentaje.removeTextField();
delete this["onEnterFrame"];
} // end if
};



Mi pregunta es ¿que tengo o como tengo que cambiar este código para que si la foto que lea es muy grande me la escale a un tamaño que determine y si es más pequeña que la deje igual?

Grácias por todo, esque lo intento de mil maneras pero no me sale.
  #2 (permalink)  
Antiguo 09/10/2005, 13:34
Avatar de Bandit
Moderador
 
Fecha de Ingreso: julio-2003
Ubicación: Lima - Perú
Mensajes: 16.726
Antigüedad: 14 años, 5 meses
Puntos: 406
Hola jmcj:
Crea un MC vacío le pones como nombre de instancia: contenedor.
Para éste ejemplo crea 2 botones para cargar las imágenes y le pones como nombre de instancia: btn1 y btn2
Código pa el primer frame de tu película:
contenedor.loadMovie("imagenes/imagen0.jpg");
tamañofinal = 200;
this.onEnterFrame = function() {
if (contenedor._width>0) {
if (contenedor._width>contenedor._height) {
contenedor._yscale = contenedor._xscale=(tamañofinal*100)/(contenedor._width);
} else {
contenedor._yscale = contenedor._xscale=(tamañofinal*100)/(contenedor._height);
}
}
if (contenedor._width == tamañofinal || contenedor._height == tamañofinal) {
delete (this.onEnterFrame);
}
};
btn1.onPress = function() {
contenedor.loadMovie("imagenes/imagen0.jpg");
};
btn2.onPress = function() {
contenedor.loadMovie("imagenes/imagen00.jpg");
};
Para el ejemplo use como nombre de las imágenes: imagen0 e imagen00.

Espero haberte sido de ayuda
__________________
Bandit.
Si no sabes estudia y si sabes enseña.
http://www.banditwebdesign.com/
  #3 (permalink)  
Antiguo 09/10/2005, 18:30
 
Fecha de Ingreso: diciembre-2003
Mensajes: 77
Antigüedad: 14 años
Puntos: 0
Muchisimas gracias Bandit, es exactamente lo que queria, incluso mejor, solo que no me hacian falta los botones y ya lo he modificado, Gracias, perfecto.
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 12:06.