ビットマップデータ(BitmapData)をリンゲージで取得し書き出すメソッドです。
忘れそうなのでメモしときます。
var source_bd:BitmapData = new firstBmpd(0, 0);
ビットマップデータ(BitmapData)はリンゲージの際に()(引数)を二つ入れる必要があります。
ここでは0,0を入れます。
また、BitmapDataはaddChild()メソッドが効かないのでビットマップに変換する必要があります。
当然ですが、リンゲージに使用するBitmapDataオブジェクトは使い回しが可能です。
BitmapData複数のBitmapDataオブジェクトをBitmapでaddChild()するためにその数だけ、BitmapDataオブジェクトを用意する
必要はありません。一つのBitmapDataをリンゲージし、bitmapで書き出した後、二つめのBitmapDataをリンゲージする際は一つめにリンゲージしたBitmapDataオブジェクトをリンゲージして、二つめのBitmapの書き出しに使用する事ができます。
以下、サンプルスクリプト
//リンゲージで設定した「firstBmpd」ビットマップデータを書き出し
var source_bd:BitmapData = new firstBmpd(0, 0);
//ビットマップオブジェクトに書き出し
var first_bmp:Bitmap = new Bitmap(source_bd);
//表示
addChild(first_bmp);
//リンゲージで設定した「secondBmpd」ビットマップデータを書き出し
source_bd=new secondBmpd(0,0);
//ビットマップオブジェクトに書き出し
var second_bm:Bitmap=new Bitmap(source_bd)
表示
addChild(second_bm);

2008年10月23日
2008年02月11日
Loaderで読み込んだオブジェクトをビットマップデータとして複製する。
Loaderでロードした画像は、一度に二つ以上表示できません。
ですが、BitmapDataとしてなら複製し、同時に二つ以上、表示する事も可能です。
今回は、Loaderでロードした画像をビットマップデータとして書き出すコードを掲載します。
手順
Loaderオブジェクトがファイルをロード
↓
ロード完了後、BitmapData オブジェクトを定義し、widthとheightをLoaderのwidthとheightに設定する
↓
BitmapData.draw(lo)。BitmapData.draw()メソッドの引数にLoader()オブジェクトを代入する
↓
Bitmapオブジェクトを定義。生成時の引数に上記のBitmapDataオブジェクトを代入。
以上の流れでLoaderでロードしたオブジェクトを複製する事ができます。
//画像をロードするLoaderオブジェクト
var my_lo:Loader=new Loader();
my_lo.load(new URLRequest("sample.jpg"));
my_lo.contentLoaderInfo.addEventListener(Event.COMPLETE,coHabdler)
addChild(my_lo)
function coHabdler(evt:Event)
{
trace("オブジェクトのロード完了");
//BitmapDataオブジェクトを複製する
var my_bmd:BitmapData = new BitmapData(my_lo.width, my_lo.height);
//BitmapDataにLoaderのデータを複製する
my_bmd.draw(my_lo);
//Bitmapオブジェクトを生成し引数にLoaderデータを複製したBitmapDataを代入
var my_bm:Bitmap = new Bitmap(my_bmd);
//
my_bm.x+=300;
addChild(my_bm);
}
ですが、BitmapDataとしてなら複製し、同時に二つ以上、表示する事も可能です。
今回は、Loaderでロードした画像をビットマップデータとして書き出すコードを掲載します。
手順
Loaderオブジェクトがファイルをロード
↓
ロード完了後、BitmapData オブジェクトを定義し、widthとheightをLoaderのwidthとheightに設定する
↓
BitmapData.draw(lo)。BitmapData.draw()メソッドの引数にLoader()オブジェクトを代入する
↓
Bitmapオブジェクトを定義。生成時の引数に上記のBitmapDataオブジェクトを代入。
以上の流れでLoaderでロードしたオブジェクトを複製する事ができます。
//画像をロードするLoaderオブジェクト
var my_lo:Loader=new Loader();
my_lo.load(new URLRequest("sample.jpg"));
my_lo.contentLoaderInfo.addEventListener(Event.COMPLETE,coHabdler)
addChild(my_lo)
function coHabdler(evt:Event)
{
trace("オブジェクトのロード完了");
//BitmapDataオブジェクトを複製する
var my_bmd:BitmapData = new BitmapData(my_lo.width, my_lo.height);
//BitmapDataにLoaderのデータを複製する
my_bmd.draw(my_lo);
//Bitmapオブジェクトを生成し引数にLoaderデータを複製したBitmapDataを代入
var my_bm:Bitmap = new Bitmap(my_bmd);
//
my_bm.x+=300;
addChild(my_bm);
}
2008年01月15日
BitmapData.draw()でMCを複製する。

BitmapData.draw()メソッドでMCを複製します。
BitmapDataオブジェクトを生成。
BitmapData.draw()メソッドの第一引数に複製したいオブジェクトを指定。
Bitmapオブジェクトを定義。
Bitmapオブジェクトをnewで生成する際の第一引数に、BitmapDataオブジェクトを代入。
例題
ステージに配置した「my_mc」を複製する。
BitmapData.draw()メソッドで第一引数に「my_mc」というmcを代入します。BitmapDataオブジェクトにmy_mcが複製されました。
「Bitmap」オブジェクトを生成し、draw()メソッドでMCを代入したBitmapDataオブジェクトを、Bitmapオブジェクトに代入します。
これでステージ上にあるmy_mcが複製されます。
import flash.display.Bitmap;
import flash.display.BitmapData;
import flash.text.TextField;
var myBitmapData2:BitmapData = new BitmapData(200, 40);
myBitmapData2.draw(my_mc);
var bmp2:Bitmap=new Bitmap(myBitmapData2);
this.addChild(bmp2);






