
After Effectsでカーソル付きのテキストタイプライターを作成する方法は?
-
-
- テキストレイヤーを作成します。
- テキストレイヤーにSlider Controlを追加し、名前をTextに変更します。
- テキストレイヤーにCheckbox Controlを追加し、名前をOn/Offに変更します。
-
var sign = "|"; // change the blinking sign to "▌"or "_"
var blinkInterval = 15; // edit the blinking interval in frames
// slider with text length
var i = effect("Text")("ADBE Slider Control-0001");
// checkbox to turn the cursor on and off
var on = effect("On/Off")("ADBE Checkbox Control-0001");
var frames = timeToFrames(time);
var check = frames / blinkInterval;
if (on == 1) {
if (i.valueAtTime(time + thisComp.frameDuration) > i) {
end = sign;
} else {
if (Math.floor(check) % 2 == 0) {
end = sign;
} else {
end = ” “;
}
}
} else {
end = ” “;
}
text.sourceText.substr(0,parseInt(i)) + end;
- On/Offのチェックボックスをオンにします。
どのように動作しますか?
Textスライダーをアニメーションさせます(1つ目のキーフレームは値が0である必要があり、2つ目のキーフレームはテキストの長さまたはそれ以上の値にします)。
On/Offチェックボックスをアニメーションさせて、点滅カーソルの開始と停止を切り替えます。
エクスプレッション内のblinkInterval変数の値を変更することで、点滅速度を調整できます(値が小さいほど点滅が速くなります)。
sign変数を置き換えることで、点滅する記号を変更することもできます。
テキストを消去する方法は?
Textスライダーを逆向きにアニメーションさせます。
タイプアウトアニメーションが終わった後にカーソルを点滅させる方法は?
On/Offチェックボックスをアニメーションさせます(1つ目のキーフレームは1、2つ目のキーフレームは0にします)。
カーソルの色を変更する方法は?
-
- Animate – Fill Color – RGBを押します。
string = text.sourceText;
counter = 1;
for (var i = 0; i < string.length; i++) {
if (string[i] == "r") counter++;
}
text.animator("ADBE Text Animator")("ADBE Text Selectors")("ADBE Text Selector")("ADBE Text Index End") - counter;
- EndプロパティをAlt+クリックし、下記のエクスプレッションを貼り付けます。
text("ADBE Text Document").length;
- Advancedプロパティを展開し、UnitsをIndexに変更します。
このタイプオンテキストプリセットの作成方法に関するチュートリアルをお楽しみいただけたなら幸いです。ご質問があればコメントを残してください。
更新。入力に関係なくカーソルを同じ速度で点滅させたい場合は、代わりに次のエクスプレッションを使用してください:
var sign = "|"; // change the blinking sign to "¦"or "_"
var blinkInterval = 15; // edit the blinking interval in frames
// slider with text length
var i = effect("Text")("ADBE Slider Control-0001");
// checkbox to turn the cursor on and off
var on = effect(“On/Off”)(“ADBE Checkbox Control-0001”);
var frames = timeToFrames(time);
var check = frames / blinkInterval;
if (on == 1) {
if (Math.floor(check) % 2 == 0) {
end = sign;
} else {
end = ” “;
}
} else {
end = ” “;
}
text.sourceText.substr(0,parseInt(i)) + end;
