スピンテキスト

| コメント(0) | トラックバック(0)

中村勇吾とかユニクロのページでよく見かけるアレ。

FLASH PLAYER

Get Adobe Flash player

【製作過程】

画面サイズは300x100。
レイヤー1に、ダイナミックテキスト(インスタンス名:txt)を含んだMC(インスタンス名:txt_mc)を配置。
ダイナミックテキストに対し、文字サイズ24、フォントタイプ「Arial Black」を指定し、文字の埋め込みを行う。
埋め込んだ文字は、「大文字」「小文字」「数字」「句読点記号」。
レイヤー2の弟1フレームに以下のコードを記述。

//spinTxt関数
function spinTxt(txt) {
 //変化文字列
 var chrSet:String = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXY1234567890!#$%&-";
  var chrSetLength:Number = chrSet.length;//変化文字列総数
  var targetTxt:String = txt;//ターゲットテキスト
 var targetTxtLength = targetTxt.length;//ターゲットテキストの文字総数
 var speed:Number = 0;//speed定義
 //MC「txt_mc」に対してonEnterFrameを実行
 //1文字につき10個のランダムテキストを適用
 _root.txt_mc.onEnterFrame = function() {
  //5フレームでstepを1加算する
  var step:Number = Math.floor(speed += 0.2);
  for (var i:Number =step; i<targetTxtLength; i++) {
   //変化文字列から1文字をランダムに切り取る
   var rndTxt:String = chrSet.substr(Math.floor(Math.random()*chrSetLength), 1);
   //step番目のターゲットテキスト1文字をランダムテキストに入れ替える
   this.txt.replaceText(i,i+1,rndTxt);
  }
  //step番目のターゲットテキスト1文字を最終形に戻す
  this.txt.replaceText(step,step+1,targetTxt.substr(step, 1));
  if(step>=targetTxtLength){
      delete this.onEnterFrame;
  }
 };
}
//関数実行
spinTxt("ayabin-ayabin");

 【まとめ】

コード太字部分を見ると分かるが、基本的には、テキストのプロパティやメソッドを使って、文字を切ったり張ったり、入れ替えたりしているだけ。青字はMCメソッド。

トラックバック(0)

トラックバックURL: http://www.ayabin.jp/mt5/mt-tb.cgi/178

コメントする

このブログ記事について

このページは、webmasterが2009年6月21日 22:21に書いたブログ記事です。

ひとつ前のブログ記事は「線を描画する(1)」です。

次のブログ記事は「setInterval関数」です。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。