グラデーションをActionScriptで生成する //AS1.0

フルフラッシュの場合に背景をグラデにするときに、グラデ画像をPhotoShopからスライスを切って持ってくると、どうしても拡大した時の若干の汚さが気になってしまいます。
また、コンテンツによってグラでの色を変える時、その枚数分の画像を用意しなければならなくなります。

なので、グラデーション自体をFlash内で生成することにより、作業時間の短縮、ファイルサイズの削減、動的にグラデを作れる可能性を考えて、サンプルのようなグラデをActionScriptで作ってみました。

下のActionScriptを使ったサンプルはこちら

//ActionScript//////////////////////////////////////////////////////////////////

var colors = [0xaabbcc,0xeeeeee];//2つの色を指定
var alphas = [100, 100];
var ratios = [0, 0x8f];
var matrix = {matrixType:"box", x:0, y:0, w:Stage.width, h:Stage.height, r:Math.PI/180*90};//(rの変更でグラデの角度を変える)
var bg_mc = _root.createEmptyMovieClip("bg_mc", 1);
var grade_bg = bg_mc.beginGradientFill("linear", colors, alphas, ratios, matrix);// 引数の順に("タイプ, 色, 透明度, 色分布の比率, 変換マトリックス")
grade_bg = bg_mc.moveTo(0, 0);
grade_bg = bg_mc.lineTo(0, Stage.height);
grade_bg = bg_mc.lineTo(Stage.width, Stage.height);
grade_bg = bg_mc.lineTo(Stage.width, 0);
grade_bg = bg_mc.lineTo(0, 0);
grade_bg = bg_mc.endFill();   
Bookmark and Share


ブックマークに追加