Lo que estoy haciendo es subir fotos a un servidor (no, no a mí, ;p) con AS3 + PHP (usando el FileReference y todo el kit) pero al terminar de hacer esta carga empieza la descarga de la misma foto. Esta foto la cargo dentro de un movieclip contenedor y haga un resize de la misma para que se ajuste a dicho contenedor.
El problema que tengo es que hago una copia del movieclip con BitmapData .
Aquí el código para explicarme:
Código :
// Al seleccionar el archivo (jpg) a subir private function FileReferenceSelect(e:Event):void { fileReference.upload(urlRequest); } // Al terminar de subirse private function onFileComplete(e:Event):void{ url=pathImagenes+fileReference.name; urlRequest=new URLRequest(unescape(url)); loader=new Loader(); loader.load(urlRequest); loader.contentLoaderInfo.addEventListener(Event.COMPLETE,listenerCompleteLoader); } private function listenerCompleteLoader(e:Event):void{ trace("listenerCompleteLoader................................."); fotoBW=new MovieClip(); foto=new MovieClip(); fotoBW.name="fotoBW"; fotoBW.addChild(loader.content); if (fotoBW.width>mc_contenedorRecorte.width || fotoBW.height>mc_contenedorRecorte.height){ var factor_WH:Number; if (fotoBW.width>fotoBW.height){ factor_WH=fotoBW.height/fotoBW.width; fotoBW.width=mc_contenedorRecorte.width; fotoBW.height=fotoBW.width * factor_WH; trace("Ancho > Alto" ); trace("mc_contenedorRecorte.width =" +mc_contenedorRecorte.width + "fotoBW.width = " +fotoBW.width); } else{ factor_WH=fotoBW.width/fotoBW.height; fotoBW.height=mc_contenedorRecorte.height; fotoBW.width=fotoBW.height * factor_WH; trace("Alto > Ancho"); trace("mc_contenedorRecorte.height =" +mc_contenedorRecorte.height + "fotoBW.height = " +fotoBW.height); } } var bmpData2=new BitmapData(fotoBW.width,fotoBW.height,true,0x00ffffff); bmpData2.draw(fotoBW); var bmp2=new Bitmap(bmpData2); foto.name="foto"; foto.addChild(bmp2); //agrega foto que va en el fondo mc_contenedorRecorte.addChild(fotoBW); // ---------------------- A ESTA LÍNEA LA ESTA MANDANDO A FREIR ESPÁRRAGOS (según yo)-------------------------- foto.width=fotoBW.width; foto.height=fotoBW.height; //agrega foto que está enmascarada mc_contenedorRecorte.addChild(foto); // color para foto en "blanco y negro" (area que no esta seleccionada) var color:ColorTransform = fotoBW.transform.colorTransform; color.redMultiplier = 1; color.greenMultiplier = 1; color.blueMultiplier = 1; color.alphaOffset=-155; // color para region de foto seleccionada var color2:ColorTransform = foto.transform.colorTransform; color2.redMultiplier = 1; color2.greenMultiplier = 1; color2.blueMultiplier = 1; color2.alphaOffset=0; fotoBW.transform.colorTransform = color; foto.transform.colorTransform=color2; }
Gracias .