「スクリプちん」のサイトデザインをリニューアル作業中です…^^;

【InDesignのスクリプト作成】ブックの同期オプションを設定する

当ページのリンクには広告が含まれています。
ExtendScriptでInDesignブックの同期項目を設定する方法

InDesignの「ブックの同期」とは、ブックに登録したドキュメント全体の設定を、特定のドキュメント設定に自動で合わせる機能です。

「ブックの同期」を使えば、InDesignで一つずつドキュメントを開いて、「スタイルの読み込み」などの個別作業は必要はありません。

同期は、「段落スタイル」や「親ページ」、「スウォッチ」など18項目あって、これら全てスクリプトで操作できます。

この記事では、同期オプションの設定コマンドを紹介します。

Adobe公式サイト  Adobe InDesignの機能を詳しく見てみる

目次

ブックの構成

次のようなブックを作成しました。

ブックには、「doc01」「doc02」「doc03」の3ファイルのドキュメントが入っています。
スクリプト実行前に、同期オプションのチェックはすべて「OFF」にしてあります。

InDesignのブックを開いたパネル
ドキュメントが3つ入ったブック
InDesignのブックの同期オプションパネル
サンプルスクリプト実行用に、全てのチェックを外してあります

スクリプトでこのブックを開き、すべての同期項目にチェックを入れてみます。

ブックを同期するスクリプト例

スクリプトでは、「同期オプション」ダイアログでの表示順に設定しています。
実行前に「OFF」だった設定を、すべてチェックして「ON」にします。

#target indesign
//ブックを開く
var objBook = app.open("/Users/〜〜〜/book01.indb");

// 同期オプションを設定する
// 条件テキスト設定
objBook.synchronizeConditionalText = true;
// 自動番号
objBook.synchronizeBulletNumberingList = true;
// 相互参照形式
objBook.synchronizeCrossReferenceFormat = true;
// テキスト変数
objBook.synchronizeTextVariable = true;
// 親ページ
objBook.synchronizeMasterPage = true;
// トラッププリセット
objBook.synchronizeTrapStyle = true;

// 表スタイル
objBook.synchronizeTableStyle = true;
// セルスタイル
objBook.synchronizeCellStyle = true;
// オブジェクトスタイル
objBook.synchronizeObjectStyle = true;
// 目次スタイル
objBook.synchronizeTableOfContentStyle = true;
// 文字スタイル
objBook.synchronizeCharacterStyle = true;
// 段落スタイル
objBook.synchronizeParagraphStyle = true;
// スウォッチ
objBook.synchronizeSwatch = true;

// グリッドフォーマット
objBook.synchronizeNamedGrid = true;
// 禁則
objBook.synchronizeKinsokuStyle = true;
// 合成フォント
objBook.synchronizeCompositeFont = true;
// 文字組み
objBook.synchronizeMojikumiStyle = true;

//スタイルグループをスマート一致 する
objBook.smartMatchStyleGroups = SmartMatchOptions.MATCH_STYLE_NAME;

実行結果

スクリプトの実行後に、先のブックファイルを開いてみます。

同期オプションパネルを開くと、全てにチェックが付いていることが確認できます。

InDesignのブックの同期オプションを全てチェックしたパネル

サンプルコードの解説

ブックの同期項目にチェックをつけるときは「true」、外すときは「false」を代入します。

最後の「スタイルグループをスマート一致」の項目だけは、次のように定数を設定します。
「true」/「false」ではありません。

「スタイルグループをスマート一致」の定数
  • チェックをつけるとき:SmartMatchOptions.MATCH_STYLE_NAME
  • チェックしないとき:SmartMatchOptions.MATCH_STYLE_PATH

ここまでで、同期項目の設定ができました。

実際の同期の実行はこちらで解説

ブック同期の「これだけは絶対やめて!」

ブックの同期は便利な機能ですが、不必要な項目まで同期してしまって痛い目に合わないように、同期項目は必要なものだけにチェックをして実行することをお勧めします。

できれば、実行前にドキュメントのバックアップもしておきましょう。

これは、スクリプトでの同期じゃなくて、手作業のときでも同じです。

合成フォントの同期については、正常に動かないことが多いというウワサを聞いたことがあるので、「全部同じでいいから、全てチェックでいいや」は、マジ!危険です。

Adobe公式サイト  Adobe InDesignの機能を詳しく見てみる

 Udemy  世界最大級のオンライン学習サイト「Udemy」を見てみる icon

よかったらシェアしてね!
  • URLをコピーしました!
目次