尝试使用BitmapData捕获舞台区域

Dim*_*ree 4 actionscript-3 bitmapdata

我试图使用BitmapData和copyPixels方法获取部分舞台区域:

bmd = new BitmapData(stage.stageWidth, stage.stageHeight);

bmdRect = new BitmapData(320, 240);

rectangle = new Rectangle(360, 20, 320, 240); 

bmdRect.copyPixels(bmd, rectangle, new Point());

bmd.draw(bmp);
bmp = new Bitmap(bmdRect);   

var myEncoder:JPGEncoder = new JPGEncoder(100);
var byteArray:ByteArray = myEncoder.encode(bmd);
Run Code Online (Sandbox Code Playgroud)

我得到的结果是一个空的.jpg我很确定错误是在位图程序而不是保存的...

Dim*_*ree 6

最后使用此解决方案复制部分阶段

(我从(360,20)和之后复制了舞台上的所有内容)

var bitmapdata:BitmapData = new BitmapData(stage.stageWidth, stage.stageHeight);

bitmapdata.draw(stage);

var bitmapDataA: BitmapData = new BitmapData(300, 250);

bitmapDataA.copyPixels(bitmapdata, new Rectangle(360, 20, 320, 240), new Point(0, 0));

var myEncoder:JPGEncoder = new JPGEncoder(90);

var byteArray:ByteArray = myEncoder.encode(bitmapDataA);
Run Code Online (Sandbox Code Playgroud)