JaLeRu escribió:
Si tienes algo con que aportar gracias
Venga, una aportación
Abre una película nueva, de 400x300 píxeles y fondo oscuro. En el documentClass le pones
Main.
La clase
Main es la siguiente:
Código :
package {
import flash.display.*;
import flash.events.*;
import flash.geom.Matrix;
public class Main extends MovieClip {
private var _canvas:Sprite; // Canvas donde dibujar
private var _boton:Sprite; // Boton para sacar pantallazos
private var _bmpData:BitmapData; // Para hacer el preview
private var _bmp:Bitmap;
function Main()
{
// Canvas
_canvas = new Sprite();
_canvas.graphics.beginFill(0xFFFFFF);
_canvas.graphics.drawRect(10, 10, 300, 200);
_canvas.graphics.endFill();
addChild(_canvas);
// Boton
_boton = new Sprite();
_boton.graphics.beginFill(0xFFFFFF);
_boton.graphics.drawRect(10, 250, 30, 20);
_boton.graphics.endFill();
addChild(_boton);
// Bitmap
_bmpData = new BitmapData(75, 50, false, 0xFFFFFF);
_bmp = new Bitmap(_bmpData);
_bmp.x = 320;
_bmp.y = 10;
addChild(_bmp);
// Listeners
_canvas.addEventListener(MouseEvent.CLICK, dibujar);
_boton.addEventListener(MouseEvent.CLICK, pantallazo);
}
private function dibujar(e:MouseEvent):void
{
// Dibuja bolas rojas
var posX:Number = this.mouseX;
var posY:Number = this.mouseY;
var obj:Shape = new Shape();
obj.graphics.beginFill(0xFF0000);
obj.graphics.drawCircle(posX, posY, 10);
obj.graphics.endFill();
_canvas.addChild(obj);
}
public function pantallazo(e:MouseEvent):void
{
// Una matriz que escalará el contenido a 1/4
var matriz:Matrix = new Matrix();
matriz.scale(.25, .25);
// Dibujar el contenido del canvas en el bitmapData
_bmpData.draw(_canvas, matriz);
}
}
}
Esta clase contiene un canvas donde dibujar bolas rojas. Luego puedes utilizar un boton para sacar pantallazos de lo dibujado:

Si quieres trastear un poco lo he colgado
aquí (no he sido capaz de insertar el swf

)
Ya nos cuentas a ver si te sirve.
Suerte con el paint!