「1000個あるInDesignファイルの中身をBridgeで検索できないかなぁ」
そんな依頼でした。
今日暇だったので(仕事する気がないのでw)、ちょっとお~まちさんとこのオブジェクトモデルを拝見しつつ、書いてみた。
中身と言っても全部じゃなくて、ある一部分の見出しの改行位置がわかればいい程度だったので、その見出しをメタ情報のキーワードに埋め込んじゃうことにしました。
プレファレンスってあんまいじったことないんだけど、さくっと書けましたよ。
~~~~~
//フォルダを選択
var folderObj = Folder.selectDialog("メタデータを埋込たいInDesignファイルのあるフォルダを選択してください") ;
//inddファイルを配列化(小文字・大文字無視)
var fileListINDD = folderObj.getFiles("*.indd") ;
//ファイル数分繰り返す
for (i = 0; i < fileListINDD.length ; i++) {
//ファイルを開く
app.open(fileListINDD[i]) ;
var docObj = app.activeDocument ;
//任意のテキストフレームの内容を変数に格納
docObj.pageItems.item("hogehoge").select();
var selObj = app.selection[0];
var keywordsContents = selObj.contents ;
//メタ情報埋め込み
docObj.metadataPreferences.keywords = [keywordsContents];
//ドキュメントを保存して閉じる
docObj.save() ;
docObj.close() ;
}
~~~
久々に0から書いたけど、楽しいなー。