台本製作作業を補助するアプリです。.jsonと.docxのファイルを組み合わせてカット番号、セリフなど繰り返しのレイアウトを自動的に処理し、文書ファイルを出力します。
拙作アプリ Starryboard から台本用JSONエクスポート機能とそれに合わせたテンプレートDOCXを提供しておりそれらの利用を前提としておりますが、テンプレートDocxとデータJSONのセットを用意すれば台本以外のどんな用途にも応用できます。
Windows11 (x86/x64/arm64)
ご自身で作った JSON のキー名に応じてテンプレートDocxに記述する変数を合わせるよう改変してください。
JSONに存在しないキー名がDocxファイルにある場合は、「展開したDocx」の欄にエラーメッセージが表示されます。エラーメッセージからどの変数がない(または誤字している)のか読み取れるかと思いますので、DocxやJsonを修正・保存して、エラー表示がなくなるまで修正を繰り返します。
アプリ内で選択中のDocxとJsonはファイル更新の自動検出が働きます。編集中ファイルの保存に合わせて「展開したDocx」の欄が自動で更新されます。
詳細な記述方法は DocxTemplater クイックリファレンス を参照してください。
基本的には、{{ }}(二重の波括弧)で変数を囲んで記述します。
JSONエクスポートで確認できる変数を、そのまま流し込むことができます。
記述例: {{.CutNumber}} → 1(カット番号に置換)
変数名の後に :W を付けることで、半角英数字を全角に変換して出力します。
記述例: {{.DialogText}:W}
JSON上で [](配列)となっているデータ(シーンやカットなど)は、# と / を使って繰り返し処理を記述できます。
開始: {{#変数名}}
終了: {{/変数名}}
記述例(シーンとその中のカットを繰り返す場合):
{{#Scenes}}
シーン番号:{{.SceneNumber}}
{{#Cuts}}
カット:{{.CutNumber}}
{{/Cuts}}
{{/Scenes}}
変数の真偽値(true/false)や条件式によって、表示内容を切り替えることができます。
書式: {{?{条件式}}} 真の場合 {{:}} 偽の場合 {{/}}
記述例: {{?{.someVar > 5}}} 5より大きい {{:}} 5以下 {{/}}