Panel
replaceColorメソッド
パネルの色の置き換えを行います.
書式1 関数による置き換え
panel.replaceColor(left,top,w,h) \(color,x,y) {
// 関数部分:colorオブジェクトに対する操作を行う
};
- left,top,w,h は,置き換えを行う範囲の左上の座標(left,top),幅w,高さhを表します.省略するとパネル全体を置き換えます.
- 関数部分では,第1引数にColorオブジェクト,第2,3引数に置き換え中の座標が渡されます.Colorオブジェクトに対して操作(フィールドの書き換え)を行うと,その箇所の色が書き換えた通りに変化します.
- 書式1はピクセル数と同数の繰り返しを行うため,時間がかかることがあります.
例:
//パネル全体をグレースケールに変換
$panel.replaceColor \(c) {
c.s=0;// 彩度を0にする
};
書式2 不透明部分の一括置き換え
panel.replaceColor(left,top,w,h,color);
- left,top,w,h は,置き換えを行う範囲の左上の座標(left,top),幅w,高さhを表します.省略するとパネル全体を置き換えます.
- color には色を表す文字列またはColorオブジェクトを指定します.不透明部分がcolorで指定した色に置き換わります.
- 書式2は高速に処理を行うことができます.(globalCompositeOperation="source-in" を使用)
.