テキストアニメーターで未表示の文字を隠し、レイヤーのIN点から表示文字数を増やします。
練習例は改行や絵文字を含まない「こんにちは」の5文字です。
最終調査日:2026年10月3日。
仮の入力値と構文をローカルで確認しています。
今回AE本体での表示・レンダリング確認は行っていません。
範囲セレクターの設定
練習用テキストへ「こんにちは」を入力します。
アニメーターから「不透明度」を追加し、アニメーターの不透明度を0%にします。
「範囲セレクター 1」の「高度」で、単位は「インデックス」、基準は「文字」、形状は「四角」、なめらかさは0%にします。
量は100%、ランダム順序はオフです。
「終了」は5、「オフセット」は0にします。
開始から終了までが透明になるため、開始を増やすと表示する文字が増えます。
範囲セレクターの「開始」に貼る式
var rate = 20; // 1秒あたりの文字数
var delay = 0; // レイヤーのIN点から待つ秒数
var total = String(text.sourceText.value).length;
var elapsed = Math.max(0, time - inPoint - delay);
var count = (isFinite(rate) && rate > 0 && isFinite(delay) && delay >= 0)
? Math.floor(elapsed * rate + 0.000001) : 0;
Math.min(total, count);
貼付先は範囲セレクターの「開始」です。
レイヤー全体の不透明度やソーステキストへは貼りません。
IN点を2秒、rateを20、delayを0にして確認します。
| 入力・条件 | 期待する結果 | 確認点 |
|---|---|---|
| 2.00秒(IN点) | 表示0文字 | 開始0 |
| 2.05秒 | 先頭1文字 | 開始1 |
| 2.25秒以降 | 5文字すべて | 開始の上限5 |
確認時刻はコンポのフレーム上の時刻へ合わせます。
30fpsでは2.05秒にちょうど止められないため、2.0667秒付近で開始が1か確認します。
文章と速度を変える場合
rateは正の数、delayは0以上の秒数です。
rateが0以下、またはdelayが負なら表示数は0です。
文章を変更したら終了も実際の文字数へ変更します。
基準の「文字」は空白も数えます。
この式のlengthはJavaScriptのUTF-16単位数なので、絵文字・結合文字・改行がAEの選択単位と一致するとは確認していません。
まず単一行の日本語や英数字で試します。
全体が消えるとき・戻し方
開始の数値だけ変わる場合は、単位が%のままでないか、終了が5か、アニメーターとレイヤーの不透明度を混同していないか確認します。
変更前に練習コンポを複製します。
戻すときは式をオフにして開始を0へ戻し、今回追加したアニメーターを削除します。
元からあるアニメーターやキーは削除しません。
旧版の参考画像
次の画像は既存記事の参考画像で、今回の修正版をAE実機で撮影したものではありません。

参照資料
Adobeのテキストアニメーション資料を参照しています。
関連記事・既存の参考資料
同じ区画の関連記事です。
各記事の貼付先と確認範囲を確認して使います。





