ごんれのラボ

iOS、Android、Adobe系ソフトの自動化スクリプトのことを書き連ねています。

InDesignでJavaScript その19

InDesignでJavaScript その19。

お仕事で大量のファイルのスタイルを統一しなくちゃいけなくて作ったやつ。

スタイルを読み込みたいファイルを選択して、次にスタイルを更新したいファイルのあるフォルダを選択すると、スタイルを取り込んでくれる。

フォルダ選択にしたのは複数ファイルのエイリアスを一括で処理したかったから。

あ、あと同じスタイル名で作り込んでおかないと意味ないです。

基本このJavaScriptの中に統一後の処理を書いてあることが前提です。

スタイル統一しっぱなしってわけにはいかないしね。

具体的にはオーバーフローチェックとか、フレーム拡大とか入れてみると楽しいですよ。

せうぞーさんの言葉をお借りすると「幸せになれます」(笑)

/*

★スタイル更新.jsx★

Copyright [偽善者こうちゃん]

[2007.10.10] {

作成

}

スタイルを読み込みたいファイルを選択して、

次にスタイルを更新したいファイルのあるフォルダを選択すると、

スタイルを取り込んでくれる。

なお、このJavaScriptを使用して損害をこうむっても

私は知りませんので、あしからず。

偽善者こうちゃん

http://macneko.blog77.fc2.com/

*/

var fileObj = File.openDialog("スタイルを読み込むファイルを選択") ;

var myStyleFile = new File(fileObj) ;

var INDDFolder = Folder.selectDialog("スタイルを更新したいINDDファイルのあるフォルダを選択") ;

var fileListINDD = INDDFolder.getFiles("*.indd") ; //txtファイルを配列化(小文字・大文字無視)

var INDDLength = fileListINDD.length ;

for (i = 0 ; i < INDDLength ; i ++) {

app.open(fileListINDD[i])

var docObj = app.activeDocument ;

//段落スタイルと文字スタイルを読み込む

docObj.importStyles(ImportFormat.paragraphStylesFormat, myStyleFile);

docObj.importStyles(ImportFormat.characterStylesFormat, myStyleFile);

docObj.save() ;

docObj.close()

}

alert("終わり")