首页 文章

在Flash中复制导入的图形

提问于
浏览
1

我正在通过Loader Class加载图形 . 现在我需要将它用作原始图像和该图像的缩略图 . 唉,在AS3中没有“duplicateMovieClip”或类似的东西

如果我将它添加到普通视图然后再缩放到缩略图,则只显示缩略图,反之亦然 .

我谷歌这个,并在网上找到了几个解决方案,但他们似乎只是使用库中的图像而不是从服务器加载 .

那么,如何在不加载Image两次的情况下执行此操作?

2 回答

  • 3

    如果只是谈论位图图像,最简单的事情就是与另一个Bitmap实例共享BitmapData . 见下文:

    var existingBitmap:Bitmap; //which you have from the loader
    var thumbNail:Bitmap = new Bitmpap(existingBitmap.bitmapData);
    
    thumbNail.witdth = 64;
    thumbNail.height = 64;
    
    addChild(thumbNail);
    

    由于您使用的是加载程序,因此可以通过 content 属性访问外部加载的位图图像 .

    var existingBitmap:Bitmap = myLoader.content;
    
  • 2

    根据您的需要,您有三种选择 .

    • 再次加载 . 到目前为止最容易,它需要两次击中服务器 .

    • 使用BitmapData.draw() . 创建一个bitmapdata并将你的加载器绘制到它,也非常简单,但你无需重绘就无法做任何动画 .

    • 加载它并加入图形类(仅适用于.swf)并使用它来实例化副本 . 看看getDefinitionByName . 这有点棘手,因为你受沙盒的支配,但它也是最合适的方法 .

相关问题