■吉里吉里/KAG/TJS雑談質問スレ■その28
■ このスレッドは過去ログ倉庫に格納されています
0706名前は開発中のものです。
2015/02/24(火) 21:53:25.25ID:6ptPBTw2var seed = new global.Layer(window, this); // グラデの種
var grad = new global.Layer(window, this); // グラデ―ション
var work = new global.Layer(window, this); // テキスト描画先
with (work.font) { .face=font.face; .angle=font.angle; .bold=font.bold; .italic=font.italic; .strikeout=font.strikeout; .underline=font.underline; };
work.setSize(work.font.getTextWidth(text), work.font.getTextHeight(text));
work.drawText(0,0,text,0xffffff,255,aa); // テキスト表示
seed.setSize(1,colors.count);// 1×3 サイズ
seed.fillRect(0,0,seed.width,seed.height,0xffffffff); // αをうめておく・operateRect を使う場合は必要
for(var i=0;i<colors.count;i++) seed.setMainPixel(0,i,colors[i]); // グラデの種を作る
grad.setSize(work.width,work.height); // テキスト用のレイヤと同じサイズにする
grad.stretchCopy(0,0,grad.width,grad.height,seed,0,0,seed.width,seed.height,stLinear); // 引き延ばしで補間されてグラデーションになる
work.operateRect(0,0,grad,0,0,grad.width,grad.height,omPsMultiplicative,255);// 文字が白なので乗算で染まる
this.operateRect(x, y, work, 0, 0, work.width, work.height, omPsNormal, opa); // レイヤに描画
};
var lay = new Layer(kag, kag.primaryLayer);
lay.visible = true;
lay.setSize(200,20);
lay.font.height=20;
lay.drawTextGrad(0,0,"てすと", [0xffffff,0xffff00,0xff0000], 255, true); // 白黄赤のグラデ
■ このスレッドは過去ログ倉庫に格納されています