- ベストアンサー
手書きで丸が書けたり文字が書けたりするフラッシュについて
ノートを開いたページみたいな画面に手書きで丸が書けたり文字が書けたりするフラッシュの作り方を知っている人いませんか。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
//CS3AS3で基本的な作りだけ //フレーム1にコピペするだけでうごくはず //太さと色と範囲の指定 var rct:Rectangle=new Rectangle(0,0,550,400); var weight:Number=5 var color:int=0x333333 //当たり判定につかうスプライトと //描画に使うスプライトと描画されるビットマップとビットマップデータ作る var hitSpr:Sprite=new Sprite() var drawSpr:Sprite=new Sprite(); var boadBmpData:BitmapData=new BitmapData(rct.width,rct.height); var boadBmp:Bitmap=new Bitmap(boadBmpData); //で、ステージに addChild(boadBmp); addChild(drawSpr); addChild(hitSpr); //描画用のスプライトの描画範囲を透明で塗りつぶす //なんにもないとマウスイベントかからないから with (hitSpr) { graphics.beginFill(0,0); graphics.drawRect(0,0,rct.width,rct.height); graphics.endFill(); } //描画用スプライトにマウスが置かれたら描画開始 //離れたら描画終了するようにする hitSpr.addEventListener(MouseEvent.MOUSE_DOWN,onDown); hitSpr.addEventListener(MouseEvent.MOUSE_UP,onUp); hitSpr.addEventListener(MouseEvent.MOUSE_OUT,onUp); //マウスが置かれた時、とりあえずグラフィックの線の太さと色を設定してから //描画点をマウスのとこまで移動する、そしてマウス移動で描画するようにする function onDown(e) { with (drawSpr) { graphics.lineStyle(weight,color); graphics.moveTo(mouseX,mouseY); } addEventListener(MouseEvent.MOUSE_MOVE,onDraw); } //マウスが離れたら描画用スプライトをビットマップに描画してクリアしてしまう function onUp(e) { boadBmpData.draw(drawSpr,new Matrix(),new ColorTransform(),BlendMode.MULTIPLY,rct); with (drawSpr) { graphics.endFill(); } removeEventListener(MouseEvent.MOUSE_MOVE,onDraw); } function onDraw(e) { drawSpr.graphics.lineTo(mouseX,mouseY); }
お礼
ありがとうございました