ビットマップ ファイルを BitmapData オブジェクトにロードするにはどうすればよいですか?

StackOverflow https://stackoverflow.com/questions/702164

質問

フラッシュでは、 ビットマップデータ オブジェクトを使用してビットマップを RAM に保存でき、後でそれを使用してムービークリップに描画できます。 beginBitmapFill() 方法。

外部ビットマップ ファイル (.jpg) を BitmapData オブジェクトにロードするにはどうすればよいですか?

AS3 コードでも役に立ちます。

役に立ちましたか?

解決

PNG をロードし、その bitmapData を「取得」する AS3 コード

var bitmapData:BitmapData;

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

function onComplete (event:Event):void
{
    bitmapData = Bitmap(LoaderInfo(event.target).content).bitmapData;
}

他のヒント

コットンによる最初の投稿を参照してください。

実際には各画像はビットマップなので、必要なのは次のとおりです。

bitmapData = event.target.content.bitmapData  

の代わりに

bitmapData = Bitmap(LoaderInfo(event.target).content).bitmapData;

Cotton と Will から取得すると、ロードされた後にビットマップが表示されます。

import flash.display.Bitmap;
import flash.display.BitmapData;

var bitmapData:BitmapData;
var bmVis:Bitmap;

var loader:Loader = new Loader();
    loader.contentLoaderInfo.addEventListener(Event.COMPLETE, onComplete);
    loader.load(new URLRequest("put url here"));

function onComplete (event:Event):void
{
    trace("loaded!");
    bitmapData = event.target.content.bitmapData;
    bmVis = new Bitmap(bitmapData);
    this.addChild(bmVis);
}

外部ファイル (.jpg) をムービークリップにロードし、ロードされるまで待つ必要があります。

次に、外部ファイルを含む MovieClip のスナップショットを BitmapData オブジェクトに取得します。

myBitmap = new BitmapData(myMC._width, myMC._height,true,0x00FFFFFF)

myBitmap.draw( myMC)

見る Flash 8 の Image API の紹介。

GUI フェーズ:
画像をライブラリにロードします (ファイル -> インポート -> ライブラリ)。
ライブラリ ブラウザで右クリックして [プロパティ] をクリックすると、X x Y ピクセルであることがわかります。
「詳細」タブを開きます。
「アクションスクリプト用にエクスポート」を選択します。myImg としてエクスポート

アクションスクリプトフェーズ:

import flash.display.BitmapData;
import flash.display.Bitmap; //needed?
..........
var myPic:BitmapData = new myImg(X,Y);
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top