Comunidad de diseño web y desarrollo en internet online

Centrar imágen en movieClip, o ajustar MC a tamaño imagen???

Citar            
MensajeEscrito el 03 Dic 2009 09:36 pm
Hola a todos.

Soy nueva aquí, y he mirado los post anteriores, a ver si me valía alguno para lo que yo necesito, pero soy muy novata en esto de hacer páginas web y no me aclaro. :(

Vereis... Tengo un problema, y es que estoy intentando hacer una galería de imágenes para un portfolio, y no se cómo hacer para que me salgan las imágenes o centradas dentro de los movieClips que he duplicado, o ajustar o adaptar el tamaño de los movie clips al de las imágenes que se cargan dentro.

1/ He creado un movieClip inicial al que le he puesto el nombre de instancia "thumb_mc",
2/ lo he duplicado mediante el método de duplicateMovieClip(); (he creado una cuadrícula de 9 clips de película de 120x120px de tamaño, repartidos en 3 columas).
3/ He cargado las imágenes en los MC desde una carpeta llamada /thumb para las miniaturas por método loadClip.
4/ He hecho que al presionar sobre las miniaturas se abra la imágen en grande en otro movieClip instanciado como "fotos_mc".
5/ También que se cierre la imágen grande al presionar sobre ella.
6/ Y hasta he puesto efectos a las miniaturas con el método TransitionManager, y a las imágenes en grande creando una variable de transparencia por Tween.

Pero no tengo ni idea de cómo hacer para que tanto las imágenes pequeñas como las grandes salgan:
CENTRADAS Y SIN EL RECUADRO DEL MOVIECLIP DE FONDO;
O AJUSTANDO LOS MOVIE CLIPS AL TAMAÑO DE LAS IMÁGENES, ya que hay imágenes de composición tanto vertical como horizontal. :S

Las imágenes de la carpeta /thumb tienen un tamaño de 120x85 px o de 85x120 px.
Las imágenes de la carpeta /img tienen un tamaño de 500x353 px o de 353x500 px.

El código que he usado es este:

Código ActionScript :

import mx.transitions.*
import mx.transitions.easing.*;

var i:Number;
var dirX:Number = 0;
var dirY:Number = 0;
var numFotos:Number = 9; 
var col:Number = 3; 
var thumbloader:MovieClipLoader = new MovieClipLoader; 
var imgloader:MovieClipLoader = new MovieClipLoader;
var obj:Object = new Object();
thumb_mc._visible = false;
foto_mc._visible = false;
for(i = 0; i<9; i++){
   var mcs:MovieClip = thumb_mc.duplicateMovieClip("mc"+i, i); 
   mcs._x = 130*dirX + 85; 
   mcs._y = 130*dirY + 110; 
   dirX++;
   if(dirX == col){
   dirX = 0;
   dirY++;
   }
   cargarPrevias();
   verFoto();
   mcs.onRollOver = RollOver;
}

function RollOver(){
   TransitionManager.start(this, {type:Photo, direction:Transition.IN, duration:1, easing:Strong.easeOut});
}

//Carga de FOTOS en movieClips (también funciona bien!). Si carga las imagenes de la carpeta /thumb, pero NO centradas. 
function cargarPrevias(){
   var thumb:MovieClip = mcs.createEmptyMovieClip("n", this.getNextHighestDepth()); //Crear movieClips vacios para poder pulsar sobre ellos.
   thumbloader.loadClip("thumb/0" + i + ".jpg", thumb); 
}

function verFoto(){
   var num:Number = i;
   var img:MovieClip = foto_mc.createEmptyMovieClip("j", this.getNextHighestDepth());
   mcs.onPress = function(event){
      foto_mc._visible = true;
      foto_mc.swapDepths(mcs.getNextHighestDepth()); 
      var transparencia:Tween = new Tween(foto_mc, "_alpha", Strong.easeInOut, 0, 100, 1, true);
      imgloader.loadClip("img/0" + num + ".jpg", img);
   }
   foto_mc.onPress = Click;
}

function Click(){
   foto_mc._visible = false;
}


Si pudierais ayudarme, me haríais un favor enooorme. Y si además me lo pudierais explicar como para "tontitos" mejor, ya que no tengo ni idea, y me ha costado muchísimo sacar lo que tengo hecho por ahora.

Muchísmas gracias por anticipado.

Saludos a todos. :wink:

Por Ideleine

1 de clabLevel



 

firefox
Citar            
MensajeEscrito el 04 Dic 2009 02:04 am
Puedes hacerlo trayendo el tamaño width y heigth de tus fotos cargadas y modificando el del MC con el borde a los mismos y ya.

Saludos, Hernán . -

Por Hernán

BOFH

6148 de clabLevel

19 tutoriales
23 articulos

Genero:Masculino   REC Desarrollador de GAIA

Marketing & IT

firefox
Citar            
MensajeEscrito el 04 Dic 2009 09:12 am
Soy muy muy novata, y nisiquiera se hacer eso. v_v

He visto algo al respecto en alguna parte, pero no lo acabo de entender. Se que no debe ser muy complicado, pero nunca habia tocado código hasta ahora. Espero no ser demasiada molestia.

¿Podrías ponerme el código para sacar el alto y ancho de las fotos cargadas, y el de cómo modificar el MC y adaptarlo a esos tamaños, porfavor?.

No hace falta ni que esté explicado (aunque me vendría bien). Ya intentaré experimentar a ver que sale. :P

Muchas gracias.

Por Ideleine

1 de clabLevel



 

firefox
Citar            
MensajeEscrito el 05 Dic 2009 03:00 am
No es muy jodido en realidad, mirá te prepare un pequeño ejemplo porque era más fácil que andar explicando:


Código ActionScript :

var Margen_Border:Number = 10;
function loadPhotos(Cant:Number):Void {

   for (var i = 1; i<=Cant; i++) {

      _root["container_"+i].Loader.loadMovie("imgs/"+i+".jpg");
      _root["id_"+i] = setInterval(preload, 300, i, _root["container_"+i].Loader);

   }


}

function preload(ID:Number, MC:MovieClip) {

   if (MC.getBytesLoaded()/MC.getBytesTotal()) {
      _root["container_"+ID].border._width = MC._width+Margen_Border;
      _root["container_"+ID].border._height = MC._height+Margen_Border;
      _root["container_"+ID].border._x -= Margen_Border/2;
      _root["container_"+ID].border._y -= Margen_Border/2;
      clearInterval(_root["id_"+ID]);
   }

}


loadPhotos(2);


Saludos, Hernán . -

Por Hernán

BOFH

6148 de clabLevel

19 tutoriales
23 articulos

Genero:Masculino   REC Desarrollador de GAIA

Marketing & IT

firefox

 

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