1

是否可以使用 ActionScript 从组件中获取位图数据?

我动态加载图像。onComplete 我创建一个 Flex Image 组件并将加载的图像添加到源

loader.contentLoaderInfo.addEventListener(Event.COMPLETE, function(e:Event):void 
{
     var image:Image = new Image();
     image.x = 0;
     image.y = 0;
     image.source = e.currentTarget.content;
     canvas.addChild(image); // canvas is already added as an MXML element.
 }

稍后我想创建一个新的 Image 组件并从第一个 Image 中获取 bitmapData。

我试过这个

canvas.getChildAt(0)

这似乎给了我图像,但我不知道如何获取位图数据。

canvas.getChildAt(0).bitmapData; 

给我一个编译错误“......未定义的属性”

有谁知道如何获取位图数据以便我可以在我的新图像组件中使用它?

提前致谢,

4

3 回答 3

2

查看 ImageSnapshot.captureBitmapData()

http://livedocs.adobe.com/flex/3/langref/mx/graphics/ImageSnapshot.html

于 2010-01-18T22:32:51.310 回答
2

Cliff 的回答会给你一个截图Image;要在不进行屏幕截图的情况下获取图像的底层 BitmapData,您可以尝试

 Bitmap(image.content).bitmapData

这也应该避免任何过滤器。

于 2010-01-18T23:21:19.640 回答
0

这应该这样做。

var bd:BitmapData = new BitmapData(myComponent.width, myComponent.height, true, 0);
bd.draw(myComponent);
于 2010-01-19T00:20:50.550 回答