文字が縮小し透明から不透明になり元の位置に集まってくるようにする |
動作バージョン |
2.0 |
---|---|
Windows | ○ |
Macintosh | ○ |
解 説 | 文字が縮小し透明から不透明になり元の位置に集まってくるようにするには、選択されたテキストを1文字ずつ分解します。これはconvertIntoObjects()で分解することができます。次に現時点の文字の位置とサイズを保持し開始フレームとします。透明度はopacityに値を設定します。0が完全な透明で、100が不透明になります。次に終了フレームに移動し、新しい座標とサイズ、不透明度を設定します。 |
---|---|
コード | toSmall_ResizeOpacity(24,4);// フレーム数、最大拡大サイズ function toSmall_ResizeOpacity(lastSec,maxSize) { var objX = new Array(); var objY = new Array(); var objSX = new Array(); var objSY = new Array(); var Comp = application.currentComposition; var cx = Comp.size.x; var cy = Comp.size.y; textObj = Comp.selection[0].convertIntoObjects(); len = textObj.length; for (i=0; i<len; i++) { objX[i] = textObj[i].position.x; objY[i] = textObj[i].position.y; objSX[i] = textObj[i].size.x; objSY[i] = textObj[i].size.y; } for (i=0; i<len; i++) { textObj[i].stopwatch.position = true; textObj[i].stopwatch.size = true; textObj[i].stopwatch.opacity = true; textObj[i].startFrame = 0; textObj[i].currentFrame = 0; px = (Math.random() * cx * 1.5) - cx / 4; py = (Math.random() * cy * 1.5) - cy / 4; textObj[i].position.x = px; textObj[i].position.y = py; textObj[i].size.x = objSX[i] * maxSize; textObj[i].size.y = objSY[i] * maxSize; textObj[i].opacity = 0; textObj[i].endFrame = lastSec; textObj[i].currentFrame = lastSec; textObj[i].position.x = objX[i]; textObj[i].position.y = objY[i]; textObj[i].size.x = objSX[i]; textObj[i].size.y = objSY[i]; textObj[i].opacity = 100; } } |
■サンプルスクリプトをダウンロードする >>.zip |
|
■サンプルの実行結果を見る >>実行 |