[AS]BitmapDataからRGB色情報を取得し表示する。(桁数を調整)
桁数の調整について質問され、上手い回答が答えられなかったのでメモ。
package { import flash.display.Bitmap; import flash.display.BitmapData; import flash.display.Sprite; import flash.events.MouseEvent; /** * ... * @author 393 */ public class GetPixel extends Sprite{ private var bmd:BitmapData; private var bm:Bitmap; public function GetPixel() { bmd = new BitmapData(stage.stageWidth, stage.stageHeight, false, Math.floor(0x0000FF )); bm = new Bitmap(bmd); addChild(bm); stage.addEventListener(MouseEvent.CLICK , clickHandler); } private function clickHandler(e:MouseEvent):void { var posX:Number = mouseX; var posY:Number = mouseY; var rgb:uint = bmd.getPixel(posX, posY); //↓これだと桁数が必ず6桁にならない trace( "rgb : " + rgb.toString(16) );//出力:ff //桁数を7桁にする rgb = rgb + 0x1000000; //↓2桁目~7桁目を抽出 trace( "rgb : " + rgb.toString(16).substr(1,6) );//出力:0000ff } } }
Tweet