InDesignのブックを同期するときは、スタイルソースを設定をしてから実行します。
もちろん、同期オプションの設定の設定も欠かせません。
同期オプションの設定は、こちら↓↓をどうぞ。
ドキュメントサンプル
次のような、先頭のドキュメントにスタイルソースが設定されているブックがあります。

このスタイルソースを、最後のdoc03.inddに変更して同期します。
コードサンプル
#target indesign
// ブックを開く
var objBook = app.open("/Users/〜〜〜/book01.indb");
// 最後のドキュメントにスタイルソースを設定する
objBook.styleSourceDocument = objBook.bookContents[-1];
// ブックを同期する
objBook.synchronize();
実行結果
doc03にスタイルソースのマークがついて、同期が実行されました。


サンプルコードの解説と補足
ブックに限ったことではありませんが、スタイルソースを設定する際、サンプルコードではbookContentsで [-1] を指定しています。
次のようにlengthでちゃんと書いてもいいんですが、面倒くさいので、コレクションの最後を指定するときはだいたい [-1] と書いています。
objBook.styleSourceDocument = objBook.bookContents[objBook.bookContents.length-1];
スタイルソースを変更する前に、もとのスタイルソースの情報を取得したいときは、次のようなプロパティを使うと名前やidが取得できます。
- 名前:ブックオブジェクト.styleSourceDocument.name
- id:ブックオブジェクト.styleSourceDocument.id
styleSourceDocumentのプロパティは、bookContentのプロパティと同じように使えます。
こちら↓↓では、bookContentのプロパティを使っています。
コメント