After Effects スクリプト | JSON風に設定ファイルなどを保存するなら。history.log風な設定ファイルを作る。
After Effectsをスクリプトでいじっていると、なにか設定データ等を外部の***.log
などのファイルに保存して置きたいことがあります。
僕の場合例えば、GUIを使って自動スライドショー作成アプリを作っているのですが、写真やコメントの位置を毎回選ばなくては行けません。
「覚えておいてくれたらいいのに。。」
という事で、
ファイルパスや動画の長さなどの設定データを連想配列で管理し、外部に保存しようというのが今回の狙いです。
例えばこう
setting = { "proj_name" : "20141118_fifi_weding", "photo_num": 32 } setting("path_photo") = "./aeproject/img/"; setting("movie_len") = 3*30+15;
こんな具合に設定データを保管して置きます。
ただこのままだと、テキストデータとして保存するには悩みます。
そこでJSONという形式に変換します。
(厳密には違うらしいです。)
javascriptの連想配列をJSON形式に変換.toSource() + eval()
このコードで
var jsonString = obj.toSource();
その後
var objr = eval(jsonString);
変換した変数をeval()することで、JSON風のデータが得られます。
あとはこれを保存するだけです。
連想配列をJSON形式で保存
// 連想配列をJSONに変換 jsonObj = setting.toSource() file = eval(jsonObj); // ファイルの書き込み var path = PATH_CURRENT+"/debug.log"; var file =new File(path); var flg =file.open("w"); if(flg){ txt = file.writeln("書き込むテキスト"); } file.close();
ファイル入出力に関してはこちらを参考にしてみてください。
その他
今回はGistをつかってブログが書きたかったのです。
実は最近お気に入りのエディタのSublime Text 3からGistへ投稿ができることを知って、しきりにコードを書きながらスニペットを投稿していました。
Sublime Text 2からGithub:Gistへ投稿できるプラグインの使い方 | offsidenowの日常を綴ったブログ http://t.co/tKPKEUUN23
— ふぃふぃ (@peace098beat_tr) November 18, 2014
参考までに