Código:
theCam = Camera.get(); if(theCam == null) { System.showSettings(3); return; } else { theCam.setQuality(8192,90); theCam.setMode(320,240,5); theCam.smoothing = 1; webcam.attachVideo(theCam); } import flash.display.BitmapData; import flash.geom.Matrix; import PrintScreen; /* creamos nueva película, donde se copiará la instantánea de la cámara. */ bitmapData = new BitmapData(320, 240, false, 0xFFFFFF); /*this.createEmptyMovieClip("bmp1", this.getNextHighestDepth());*/ this.createEmptyMovieClip("bmp1", 0); bmp1.attachBitmap(bitmapData, 2, "auto", true); var myMatrix:Matrix = new Matrix(); myMatrix.scale(2,2); bmp1._x = 330;snap._y = 0; enviar._visible = false; preloader._visible = false captura.onPress = function () { bitmapData.draw(webcam,myMatrix); enviar._visible = true; enviar.enabled = true; } enviar.onPress = function () { enviar.enabled = false; captura._visible = false; preloader._visible = true; output(); } var listener:Object = new Object(); // copy in progress... listener.onProgress = function(target:MovieClip, loaded:Number, total:Number){ var perc = Math.round((loaded/total)*100) preloader.perc.text = "procesando... " + perc + "%" preloader.barra._xscale = perc; } // copy is complete, send the result LoadVars to PHP listener.onComplete = function(target:MovieClip, load_var:LoadVars){ bitmapData.dispose(); preloader._visible = false; enviar._visible = false; var label:TextField = bmp1.createTextField("label", 1, 0, 0, 320, 240); label.multiline = true; label.wordWrap = true; label.text = "Por favor espere, los datos están siendo enviados al servidor y este proceso puede tardar algunos minutos, dependiendo de su velocidad hacia internet...\n\nSea paciente y espere sin hacer muecas ;-)"; var my_fmt:TextFormat = new TextFormat(); my_fmt.font = 'Trebuchet Ms'; my_fmt.size = 15; my_fmt.color = 0xFF0000; label.setTextFormat(my_fmt); load_var.send("apps/Camicard/php/webcam.php", "", "POST") } function output() { pn = new PrintScreen(); // initialize the PrintScreen class pn.addListener( listener ); // assign a listener pn.print(this,330,0,320,240) // copy the _root preloader.perc.text = "computing... 0%" }