どうも、こんにちは。
今回は、意外と知られていない「制御文字」について解説していきたいと思います。
制御文字とは?
制御文字は、テキストに入力することで、様々なテキストを表現できるようになる機能です。
- 途中から文字の大きさを変える
- 途中から文字の色を変える
- 途中からフォントを変える
- テキスト上でスクリプトを実行する
これらはすべて、制御文字で簡単に行うことができます。
制御文字の基本
値の指定
たとえば、文字のサイズを変えたいときは、このように入力します。
普通の文字<s200>大きい文字
この<s200>
という部分は、「これ以降の文字のサイズを200に設定する」という意味です。
これをテキスト欄に入力すると、
と、途中からサイズが変わっているのがわかります。
値のリセット
上記のテキストにさらに制御文字を加えてみます。
普通の文字<s200>大きい文字<s>どうなる?
<s200>
でサイズを200に設定したあとに、<s>
という制御文字を追加してみました。
これをテキスト欄に入力してみると、
デフォルトの大きさに戻りました。
サイズの値を指定しなかったので、テキストオブジェクトのデフォルトの値が適用されています。
このように一部の制御文字は、値を指定しない場合は元の値が反映されます。
制御文字の一覧
サイズ・フォント
文字のサイズとフォントを変更する制御文字です。
<s[サイズ][,フォント名][,装飾(BI)]>
項目 | 概要 | |
サイズ | 文字のサイズ(整数) | 任意 |
フォント名 | フォント名 | 任意 |
装飾(BI) | 文字の装飾(B:太字、I:斜体) | 任意 |
例1
デフォルト<s300>大<s50>小
「大」をサイズ300で、「小」をサイズ50で表示しています。
例2
<s,,>デフォルトのフォント
<s150,Meiryo UI,B>メイリオ
<s,MS UI Gothic,BI>MSゴシック
1行ごとに、フォントと装飾を指定しています。
表示速度
<r[表示速度]>
項目 | 概要 | |
表示速度 | 表示速度(数値) | 任意 |
例
<r>あかさたなはまやらわ
<r15>あかさたなはまやらわ
<r4>あかさたなはまやらわ
待機時間
<w[待機時間]>
項目 | 概要 | |
待機時間 | 待機する秒数(数値) 数値の前に「*」をつけると、直前の文字数×数値 秒だけ待機する | 任意 |
例1
あかさたな<w0.5>はまやらわ
「あかさたな」の後に0.5秒待機します。
例2
あかさたな<w*0.5>はまやらわ
「あかさたな」の後に2.5秒待機します(0.5秒×5文字)。
表示クリア
<c[クリア時間]>
項目 | 概要 | |
クリア時間 | 表示をクリアまで待機する秒数(数値) 数値の前に「*」をつけると、直前の文字数×数値 秒でクリアする | 任意 |
例1
あ<c0.5>い<c0.5>う<c0.5>え<c0.5>お
各文字の後にテキストをクリアしているので、1文字ずつ表示されています。
例2
あ<c*0.2>いう<c*0.5>えお
「あ」が表示された0.2秒後(0.2秒×1文字)に「いう」を表示します。
「いう」の1秒後(0.5秒×2文字)に「えお」を表示します。
座標
<p[X,Y[,Z]]>
項目 | 概要 | |
X, Y | X座標 と Y座標(数値) | 必須 |
Z | Z座標(数値) (個別オブジェクトのみ有効) | 任意 |
座標の数値の前に、「+」や「-」をつけると、相対座標で指定できます。
例1
<p250,200>あいうえお<p100,400>かきくけこ
絶対座標で文字の位置を指定しています。
例2
<p+250,+200>あいうえお<p+100,+400>かきくけこ
こちらは「+」を追加しているので、相対座標で位置を指定しています。
色
<#[文字色][,装飾色]>
項目 | 概要 | |
文字色 | 文字色(RGB値/16進数) | 任意 |
装飾色 | 縁色や影色(RGB値/16進数) | 任意 |
例
<#ff0000>AviUtl<#>で<#ffffff,ef6600>制御文字<#>使おう!
「縁取り文字」に設定しているテキストを、一部だけ色を変更しています。
スクリプト
<?[スクリプト]?>
<?=[obj.mes()関数の引数]?>
項目 | 概要 | |
スクリプト | 実行するスクリプト | 任意 |
obj.mes()関数の引数 | obj.mes()関数の引数(Lua構文) | 任意 |
例1
<?obj.rz=obj.time*360?>あああ
obj.rz
(オブジェクトの回転)を時間とともに変化させています。
例2
<?=os.date("%Y-%m-%d %H:%M:%S", os.time())?>
os.time()
関数で現在時刻を取得したあと、os.date()
関数で適切な形に整形しています。
これらをobj.mes()
関数の引数として用いることで、テキストに現在時刻を表示します。
チートシート
内容 | 構文 | 説明 |
サイズ・フォント | <s[サイズ][,フォント][,装飾(B:太字/I:斜体)]> | 文字のサイズやフォントを変更 |
表示速度 | <r[表示速度]> | 文字の表示速度を設定 |
待機時間 | <w[待機時間]>、<w*[待機時間]> | 表示を待機する秒数 |
表示クリア | <c[クリア時間]>、<c*[クリア時間]> | 表示をクリアまで待機する秒数 |
座標 | <p[X,Y[,Z]]> | 文字の座標を指定(+,-で相対座標) |
色 | <#[文字色][,装飾色]> | 文字や縁・影の色を指定 |
スクリプト | <?[スクリプト]?>、<?=[obj.mes()関数の引数]?> | Luaスクリプトの実行 |
さいごに
いかがでしたでしょうか。
非常に便利な制御文字、ぜひぜひ活用してみてください。