Duplicate an image which loaded as external
Bazı durumlarada dışardan yüklediğiniz tek bir resmi yada swf’yi birden fazla göstermeniz gerekebilir. bunun 2 yöntemi var;
- ne kadar kopyalama yapacaksanız o kadar o görseli loaded edeceksiniz ki bu server tarafında trafik demekdir.
- Bir defa loaded ettikten sonra flash’ın kendi içinde server tarafında
herhangi bir trafik/yük oluşturmadan copyalamak. Biz bu yöntemi
kullanıcaz.
Eğer dosyanız image ise;
var loader:Loader=new Loader()
var request:URLRequest=new URLRequest("imageURL.jpg")
loader.load(request)
loader.contentLoaderInfo.addEventListener(Event.COMPLETE, loaderComplete)
addChild(loader)
function loaderComplete (event:Event)
{
var mainLoader:Loader=event.currentTarget.loader as Loader;
var copyLoader:Bitmap = new Bitmap((mainLoader.getChildAt(0) as Bitmap).bitmapData)
copyLoader.x=200
addChild(copyLoader)
}
Eğer dosyanız swf ise;
var loader:Loader=new Loader()
var request:URLRequest=new URLRequest("swfURL.swf")
loader.load(request)
loader.contentLoaderInfo.addEventListener(Event.COMPLETE, loaderComplete)
addChild(loader)
function loaderComplete (event:Event)
{
var mainLoader:Loader=event.currentTarget.loader as Loader;
var copyLoader:Loader=new Loader()
copyLoader.loadBytes( mainLoader.contentLoaderInfo.bytes )
copyLoader.x=200
addChild(copyLoader)
}
dilerseniz loaderComplete içindeki Bitmap işlemini bir for döngüsü içine alarak da yapabilirsiniz. ama burada oluşan kopyaları görebilmeniz için x yada y koordinatlarını değiştirmeniz gerekiyor örn copyLoader.x=200 * i.