ビットマップ ファイルを BitmapData オブジェクトにロードするにはどうすればよいですか?
-
22-08-2019 - |
質問
フラッシュでは、 ビットマップデータ オブジェクトを使用してビットマップを 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)
GUI フェーズ:
画像をライブラリにロードします (ファイル -> インポート -> ライブラリ)。
ライブラリ ブラウザで右クリックして [プロパティ] をクリックすると、X x Y ピクセルであることがわかります。
「詳細」タブを開きます。
「アクションスクリプト用にエクスポート」を選択します。myImg としてエクスポート
アクションスクリプトフェーズ:
import flash.display.BitmapData;
import flash.display.Bitmap; //needed?
..........
var myPic:BitmapData = new myImg(X,Y);
所属していません StackOverflow