Comunidad de diseño web y desarrollo en internet online

DETECTAR EL TAMAÑO DE UN JPG

Citar            
MensajeEscrito el 28 Jul 2007 05:25 pm
Hola, buenas tardes, os escribo para saber si podéis hecharme una mano en lo siguiente:
Tengo una película que carga varios archivos JPGs, la diferencia es que unos JPGs son verticales y otros horizontales.
Mi pregunta es: Como puedo hacerle entender al programa cuales son verticales y cuales son horizontales? Es decir, que por ejemplo en la orden "trace", aparezca el tamaño de la imágen JPG.

Gracias.

Por ÉLAN

7 de clabLevel



Genero:Masculino  

msie7
Citar            
MensajeEscrito el 28 Jul 2007 05:51 pm
una vez que lo cargas en un MC vacío, usa tuMC._width y tuMC._height

Por _CONEJO

BOFH

7639 de clabLevel

17 tutoriales
21 articulos

 

firefox
Citar            
MensajeEscrito el 28 Jul 2007 06:01 pm
Muchas gracias, mira te explico, aplicando el siguiente código:

this.createEmptyMovieClip("window_mc", 1);
this.window_mc.loadMovie("imagen.jpg");
trace(this.window_mc._height);
trace(this.window_mc._width);

en el panel de observaciones me aparecen dos zeros, aquí mi duda... :(

Por ÉLAN

7 de clabLevel



Genero:Masculino  

msie7
Citar            
MensajeEscrito el 28 Jul 2007 06:02 pm
no, los traces los debes poner cuando el JPEG esté cargado al 100% usa movieClipLoader para saberlo

Por _CONEJO

BOFH

7639 de clabLevel

17 tutoriales
21 articulos

 

firefox
Citar            
MensajeEscrito el 28 Jul 2007 06:36 pm
Hola, gracias por responder... aunque ahora aparecen cosas que en otras precargas no me pasaban;
cuando le aplico un cargador, no me deja llegar al 100%, sino que termina la carga al 18%, entonces las opciones "trace" no aparecen (porqué le indico que aparezcan cuando sea 100%) i lo mismo si le digo 10% o menor... seguiré probando a ver que pasa.

Muchísimas gracias por responder y darme una pauta que seguir ^^

Por ÉLAN

7 de clabLevel



Genero:Masculino  

msie7
Citar            
MensajeEscrito el 28 Jul 2007 06:55 pm
he hecho una prueba donde configuro el código de la precarga de la siguiente manera:

if (this.por== 100) {
this.progres._visible = false;
this.window_mc._visible = true;
delete this.onEnterFrame;
trace(this.window_mc._height);
trace(this.window_mc._width);
} else {
this.progres._visible = true;
this.window_mc._visible = false;
}
}

con lo que window_mc es el movieclip que he creado y progres es una caja de texto dinámico que, en este caso se detiene al 20% y, por lo tanto no deja que window_mc se vea... y por eso mismo, ya no sólo tengo la duda anterior, sino que ahora me surje una nueva: Como es que se detiene al 20%?
Carga una imágen JPG, no hay más misterio... puede que tenga que ser un JPG progresivo u optimizado lo que me dé este problema?

Por ÉLAN

7 de clabLevel



Genero:Masculino  

msie7
Citar            
MensajeEscrito el 28 Jul 2007 07:04 pm
Si la opción es "Standard" en Photoshop, me llega al 20%.
Si la opción es Optimizado, me llega al 31%.
Si la opción es progresivo, me llega al 31%.

Si escojo salvar para web Progresivo, me llega al 14%.
Si escojo salvar para web Optimizado, me llega al 14%.

Está claro que algo sucede con el JPG, pero todas las imágenes que he hecho hasta ahora siempre las he publicado sin problema y Flash me las detecta sin problema... pero ahora no va bién la cosa...
Alguna sugerencia?

Gracias

Por ÉLAN

7 de clabLevel



Genero:Masculino  

msie7
Citar            
MensajeEscrito el 28 Jul 2007 07:58 pm
Hola _CONEJO, pues ya tengo la respuesta, así que dispongo a explicarla por si a alguien le pasa lo mismo:

El problema principal era que en el código inicial de la precarga utilizaba el redondeo de las variables para conseguir que la precarga mostrase del 0% al 100%, con lo que la imágen se quedaba al 20%.
Así que utilicé el tamaño del archivo de la imágen como referencia, sin redondear, con lo que cuando las variables cargados y totales coinciden se determina que la carga se ha realizado con exito. Como veis, las variables cargados y totales hacen referencia a los bytes del documento a cargar.

Este era mi código inicial:

Código :

this.createEmptyMovieClip("window_mc", 1);
   this.onEnterFrame = function() {
this.cargados7 = Math.floor(this.window_mc.getBytesLoaded()/100);
      this.totales7 = Math.floor(this.window_mc.getBytesTotal()/100);
      this.por7 = (this.window_mc.getBytesLoaded()/this.window_mc._root.getBytesTotal())*100;
      this.datos7 = Math.floor(this.por7);
      this.progres7.text = this.datos7+" % ";
      if (this.por7 == 100) {
this.progres7._visible = false;
         this.window_mc._visible = true;
         delete this.onEnterFrame;
         trace(this.window_mc._height);
         trace(this.window_mc._width);
      } else {
         this.progres7._visible = true;
         this.window_mc._visible = false;
      }
   };
   this.window_mc.loadMovie("imagen.jpg");
}

Pero con las correcciones pertinentes queda de la siguiente manera:

Código :

this.createEmptyMovieClip("window_mc", 1);
   this.onEnterFrame = function() {
      this.cargados7 = Math.floor(this.window_mc.getBytesLoaded()/100);
      this.totales7 = Math.floor(this.window_mc.getBytesTotal()/100);
      this.progres7.text = this.cargados7+" % ";
      if (this.cargados7 == this.totales7) {
(... igual que el anterior...)


Con lo que cuando se ejecuta trace aparece el tamaño del archivo a cargar.

En fin, un saludo

Por ÉLAN

7 de clabLevel



Genero:Masculino  

msie7
Citar            
MensajeEscrito el 29 Jul 2007 04:51 am
espera una maldita respuesta antes de tapar el post a códigos carajo ¡¡¡¡¡


en fin...
busca el tutorial de precargas y trata de aprendertelo bien.
resulta que MovieClipLoader (solo con este metodo puedes manejar estas cosas) tiene el siguiente evento:
onLoadInit
que se dispara cuando lo cargado ya esta en escena, solo aca ya puedes preguntarle al mcQueContieneTuFotito cuanto mide
mira las referencias de AS

Por Inyaka

Claber

3176 de clabLevel

9 tutoriales
2 articulos

Genero:Masculino   Desarrollador de GAIA

Programador y fotógrafo

firefox

 

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