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%"
}


