1

ローダークラスを介してグラフィックをロードしています。次に、元の画像とその画像のサムネイルの両方として使用する必要があります。残念ながら、AS3には「duplicateMovieClip」などはありません。

通常のビューにChildを追加してからサムネイルに追加すると、サムネイルのみが表示され、その逆も同様です。

私はこれをグーグルで検索し、オンラインでいくつかの解決策を見つけましたが、それらはすべてライブラリの画像で機能し、サーバーからロードされていないようです。

では、画像を2回ロードせずにこれを行うにはどうすればよいですか?

4

2 に答える 2

3

ビットマップイメージについて話しているだけの場合、最も簡単なことは、BitmapDataを別のBitmapインスタンスと共有することです。下記参照:

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;
于 2010-01-24T17:01:10.080 に答える
2

あなたがそれで何をする必要があるかに応じて、あなたは3つのオプションがあります。

  1. もう一度ロードします。はるかに簡単ですが、とにかくキャッシュされるので、サーバーに2回アクセスする必要はありません。
  2. BitmapData.draw()を使用します。ビットマップデータを作成し、それにローダーを描画します。これも非常に簡単ですが、再描画せずにアニメーションを作成することはできません。
  3. それをロードし、グラフィックのクラスをまとめて(.swfにのみ適用されます)、それを使用してコピーをインスタンス化します。getDefinitionByNameを見てください。サンドボックスに翻弄されるので、これは少し注意が必要ですが、それを行うための最も適切な方法でもあります。
于 2010-01-24T13:31:58.720 に答える