我正在尝试拍摄图像的蒙版区域的快照......所以,我加载我的图像然后执行以下功能:
private function manageLoadedImage(e:Event):void
{
_bitdata = e.currentTarget.content; // get the bitmap
_bithold.addChild( _bitdata ); // add the bitmap to a sprite on the stage
_bithold.x = holder1.x -((_bithold.width - holder1.width)/2); // center image
_bithold.y = holder1.y -((_bithold.height - holder1.height)/2); // center image
var m:Shape = new Shape(); // create the shape
m.graphics.beginFill(0x0); // make the fill
m.graphics.drawRect( this.x, this.y, holder1.width, holder1.height ); // draw the mask
m.graphics.endFill(); // end the fill
_bithold.mask = m; // mask the image
}// private function manageNewPaneAddition(e:Event):void
public function save( ):void
{
// WHAT DO I DO HERE ????????
_bmdsrc = new BitmapData( holder1.width, holder1.height ); // create the new bitmapdata
var m:Matrix = _bithold.transform.matrix; // lets try this out
m.tx = -holder1.x + _bithold.width; // not sure what this means ?
m.ty = -holder1.y + _bithold.height; // what does this mean ?
_bmdsrc.draw( _bithold, m); // draw the bitmapdata
// END PROBLEM ??????????????
}// private function save( ):void
所以,在我管理加载的图像之后,我保存它。但是保存功能只输出一个 80x80px 的白色方块。这告诉我,我正在对一个空白阶段进行快照。
MovieClip 构造如下:
我有一部电影,在那部电影里面我有一个缩略图编辑器名称 ThumbEdit。
ThumbEdit 在其舞台上有一个名为“holder1”的影片剪辑。在 ThumbEdit 的文档类中,我创建了一个精灵“_bithold”并将其放置在舞台上的 holder1.x 和 holder1.y 上。当图像加载时,我将图像添加到 _bithold 中,然后用形状屏蔽 _bithold。所以,我想获取 _bithold 的蒙面区域的快照,但我不确定我应该如何去做……有什么建议吗?