After Effects スクリプト | テキストの改行
スライドショーの自動化プログラムを製作中。 テキストファイルから一括でコメント読み込ませて、 テキストオブジェクトにしているんだが、 結婚式のスライドショーの場合は、"ココ”で二行にしたい!と言った要望があるので、任意の場所で改行するための方法を調べた。
jsで改行するためのコード
aftereffectsのテキストのエクスプレッションですが、 コンポジ… - 人力検索はてな
改行するには、改行コードをはせめばよいのです。 とても簡単。 コードは下のようになる。
text.sourceText=(test1 + String.fromCharCode(13) + test2);
jsに改行する位置を教える。
あらかじめ、スライドショーへのコメントが書かれたファイルmessage.txtを作っている。 message.txtは各行が各スライドページに対応していて、たとえばスライドショーページが30枚であれば、message.txtは30行になる。 そのため、各スライドページのコメントは一行に納めなければ行けない。つまり改行ができない。これじゃこまる。
そこで、改行を入れたい場所に%n
とおまじないを書いておき、テキストの呼び出しの際に%n
を改行コードと変更している。
// message.txtへのpathを渡して、各行ごとのテキストの配列を得る list_message_txt = parseTextFile(PATH_MESSAGE); // テキストファイルのインポートとパース関数 //***********************************************// var parseTextFile = function(PATH){ //ファイルオープン var fileObj = new File(PATH); var txt_List = []; var line=1; // ファイルオープンのおまじない if (fileObj.open("r")){ // ファイルの最後まで各行を読み出す while(!fileObj.eof){ // 各行のテキスト var s = fileObj.readln(); // 任意の場所に'%n'と書いておき // 改行コードと変更する。 txt_List[line] = s.split("%n").join(String.fromCharCode(13)); line++; } fileObj.close(); }else{ // オープンできなかったときのエラー処理 alert("parseTextFile::ERROR::ファイルがひらけませんでした::"+PATH); } return txt_List; }
これで、任意の場所に改行が入ったテキストの配列を扱える。あとは、このテキストを各画像に配置していけば完成である。