Greensock ImageLoader将图像加载为位图而不是创建movieclip

时间:2012-10-19 12:22:55

标签: actionscript-3 greensock

我有时会使用greensock imageloader(这是一个很棒的插件,很容易使用,我喜欢它),只是想知道有没有办法可以加载位图而不会在容器内创建一个movieclip?我在API中找不到这个解决方案 http://www.greensock.com/as/docs/tween/com/greensock/loading/ImageLoader.html

有没有人有经验?

干杯 比尔

1 个答案:

答案 0 :(得分:2)

根据文件:

  

ImageLoader的内容是指立即创建的ContentDisplay(Sprite),以便您可以在图像加载之前(或同时)定位/缩放/旋转它或添加ROLL_OVER / ROLL_OUT / CLICK侦听器。使用ImageLoader的content属性获取ContentDisplay Sprite,或使用rawContent属性获取实际的Bitmap。如果在vars对象中定义了容器,则ContentDisplay将立即添加到该容器中)。

所以他们说你不必在vars对象中提供container。如果您只想获取位图,那么它表示您可以使用rawContent属性。

尝试这样的事情:

//create an ImageLoader:
var loader:ImageLoader = new ImageLoader("your_image.jpg", {name:"image", 
x:0, y:0, width:200, height:200, onComplete:onImageLoad});

//begin loading
loader.load();

//see if we have a bitmap
function onImageLoad(event:LoaderEvent):void {
   trace(event.target.rawContent);
}

虽然你说你喜欢这样,但在没有库的AS3中加载位图是微不足道的:

var loader:Loader = new Loader();
loader.contentLoaderInfo.addEventListener(Event.COMPLETE, onComplete);
loader.load(new URLRequest("your_image.png"));

function onComplete (event:Event):void
{
     // get your loaded bitmap
     var bmp:Bitmap = Bitmap(LoaderInfo(event.target).content);
}