文字を波打たせる |
動作バージョン |
2.0 |
---|---|
Windows | ○ |
Macintosh | ○ |
解 説 | 文字を波打たせるようにするには、最初の文字の位置を保持しておきます。文字は1文字ずつ分解していますが、これはconvertIntoObjects()によって簡単に分解でき、分解された文字は配列として以後参照することができます。 波打たせるようにするために、サインカーブを利用しY座標のみ加算するようにします。これで周期的に文字が上下に波打つような感じになります。 |
---|---|
コード | sinCurv(72, 0.2, 20, 4);//フレーム数、周期、振幅幅、ずれ具合 function sinCurv(lastFrame,n,w,zure) { var objY = new Array(); var Comp = application.currentComposition; var rad = 0; var textObj = Comp.selection[0].convertIntoObjects(); var len = textObj.length; // 初期値を設定 for (i=0; i<len; i++) { objY[i] = textObj[i].position.y; textObj[i].stopwatch.position = true; textObj[i].startFrame = 0; textObj[i].endFrame = lastFrame; } // 計算して座標を設定していく for (j=0; j<lastFrame; j++) { rad = rad + n; for (i=0; i<len; i++) { div = (i / len) * zure; ofstY = Math.sin(div+rad) * w; // 振幅 textObj[i].currentFrame = j; textObj[i].position.y = objY[i] + ofstY; } } } |
■サンプルスクリプトをダウンロードする >>.zip |
|
■サンプルの実行結果を見る >>実行 |