Flash-AS3でBitmapData読み込み
Flash/AS3に関する個人的メモです。
BitmapDataにファイルから画像を読み込む
FlashのAS3(ActionScript3)でBitmapDataにイメージデータを読み込む、メモです。
・loadBitmap関数はAS2のものであり、AS3にはない
・AS3ではLoaderを用いた非同期動作となる。
・Loaderの非同期読み込み完了後、BitmapDataのdrawで画像セット。
実際に動作するコードを示します。
var loader:Loader = new Loader();
loader.contentLoaderInfo.addEventListener(Event.COMPLETE,loadDone);
loader.load(new URLRequest("test_image.jpg" ));
function loadDone(e:Event){
var bmd:BitmapData= new BitmapData(loader.width,loader.height);
bmd.draw(loader);
var bitmap:Bitmap = new Bitmap(bmd);
addChild(bitmap);
}
直接表示しているのはBitmapですが、元となるBitmapDataに変更を加えると
表示に反映されます。Bitmapにイメージデータを読み込んで画像に手を入れる作業は ■色相拡張による2色型色覚シミュレータ で行っています。
BitmapDataを使わず単純に表示するだけ
BitmapDataを使う必要がない場合は、単純に 画像をロードしたLoaderをaddChildするだけで 表示されます。COMPLETEイベントを拾う必要はありません。
var loader:Loader = new Loader();
loader.load(new URLRequest("test_image.jpg" ));
addChild(loader);
BitmapDataに予め画像を組み込む
予めプログラムに画像を組み込むこともできます。
画像をライブラリに読み込み、リンケージでクラス名を指定すれば、そのクラス名
でnewできます。
var bmd:BitmapData= new spectrumPanel(390,260);<-リンケージで指定されたクラス名 var bm:Bitmap= new Bitmap(bmd); addChild(bm);
TextInputのフォントサイズを変える
var myFormat:TextFormat = new TextFormat();
myFormat.size=18;
tin_1.setStyle("textFormat", myFormat);
tin_2.setStyle("textFormat", myFormat);
Flash CS3死す(trace)
デバグ時にtraceで沢山出力させるとFlashCS3は死んでしまうので注意!
死ぬとソース修正は反映されていない!!!!
このswfにはActionScriptが含まれていないため、デバグできません。
ソースに次のようなコードがあるとFlashSC3は発狂するので注意!
var X:Number=0.1.5;
tin_GBhRate2はタブー
インスタンス名には時々理由不明であるが使えないものがある。
例えば"tin_GBhRate2"は使えない。
| 固定リンク

