我在 Flash (AS3) 中有相机输入应用程序,并在其上绘制了一些图形。我想拍摄舞台可见区域的图像快照,但只有视频是我在视频上绘制的图形。我想从图像快照中排除控件。我的显示对象布局有以下关系:
-stage
--canvas (Sprite)
---video (Video)
---overlayed graphics (Sprites, MCs, Shapes)
--controls (Buttons)
舞台大小是固定的,我想为我的画布元素的所有子元素(相机输入视频和叠加图形,但不包括控件)拍摄图像快照。当叠加的图形在舞台大小范围内时,我可以制作此图像快照。我这样做:
var bmpd:BitmapData = new BitmapData(canvas.width, canvas.height);
bmpd.draw(canvas, new Matrix(1, 0, 0, 1, canvas.x, canvas.y));
但是,当我在画布上的视频上绘制的图形超出舞台显示区域的范围时,这会给我带来不想要的结果。如何将图像快照限制在舞台内可见区域的范围内?
谢谢