是否可以使用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)
这似乎给了我Image,但我无法弄清楚如何获取位图数据。
canvas.getChildAt(0).bitmapData;
给了我一个编译错误“... undefined property”
有谁知道如何获取位图数据,以便我可以在我的新图像组件中使用它?
提前致谢,
冉
答案 0 :(得分:2)
查看ImageSnapshot.captureBitmapData()
http://livedocs.adobe.com/flex/3/langref/mx/graphics/ImageSnapshot.html
答案 1 :(得分:2)
Cliff的回答将为您提供Image
的屏幕截图;要在不进行屏幕截图的情况下获取图像的基础BitmapData,您可以尝试
Bitmap(image.content).bitmapData
这应该避免任何过滤器。
答案 2 :(得分:0)
这应该这样做。
var bd:BitmapData = new BitmapData(myComponent.width, myComponent.height, true, 0);
bd.draw(myComponent);