公開日:2013年5月15日
開いているinddファイルに印刷可能領域を設定し、ファイルを上書き保存→閉じるという動作をするスクリプトです。
今まで版外情報を置くスペースを作っていなかったファイルに対して使いました。ちょっと多かったので…
地味ですが、どなたかのお役に立てば。
//印刷可能領域を開いているドキュメント全てに設定
#target indesign
#targetengine "slug"
//UI設定
var win=new Window("palette","まとめて印刷可能領域設定");
//段間の幅
var slugField=win.add("panel",undefined,"印刷可能領域");
slugField.alignment="left";
var slugFieldlabel=slugField.add ("statictext",undefined,"幅は?");
var slugFieldanot=win.add("statictext",undefined,"※単位は個々のドキュメント設定に依存します");
slugFieldanot.alignment="left"
slugFieldanot.graphics.font = ScriptUI.newFont ("", "", 12);
var slugFieldForm=slugField.add ("edittext",undefined,"13");
slugFieldForm.characters=4;
slugFieldForm.active=true;
//四辺全部に数値を設定
var allSlugCheck=win.add ("checkbox", undefined, "四辺全部に数値を設定");
allSlugCheck.alignment="left"
//実行ボタン
var buttons=win.add("group");
buttons.align="left";
var OK=buttons.add ("button", undefined, "上記設定で実行");
var cancel=buttons.add ("button", undefined, "キャンセル");
win.center();
win.show();
OK.onClick=function(){
while(app.documents.length>0)
{
var doc=app.documents[0];
var docPref=doc.documentPreferences;
var result=[
parseInt(slugFieldForm.text),//印刷可能領域の幅
allSlugCheck.value//四辺まとめて設定するか
];
if(result[1]==true){
docPref.documentSlugUniformSize =true;
docPref.slugTopOffset=result[0];
docPref.slugBottomOffset=result[0];
docPref.slugInsideOrLeftOffset=result[0];
docPref.slugRightOrOutsideOffset=result[0];
doc.close(SaveOptions.yes);
}else{
docPref.documentSlugUniformSize =false;
docPref.slugTopOffset=result[0];
//上以外は現在の設定値を維持
docPref.slugBottomOffset=docPref.slugBottomOffset;
docPref.slugInsideOrLeftOffset=docPref.slugInsideOrLeftOffset;
docPref.slugRightOrOutsideOffset=docPref.slugRightOrOutsideOffset;
doc.close(SaveOptions.yes);
}
}
};
cancel.onClick=function(){
win.close();
};
1.InDesignでドキュメントを開いて(複数可)、スクリプトを実行
2.「まとめて印刷可能領域設定」ダイアログが表示されます。「幅は?」の入力フィールドに値を入れ、「上記設定で実行」をクリック。
3.開いているInDesignドキュメントの印刷可能領域が「2.」で設定した値になり、ファイルは保存して閉じられます。作例では四辺に「13mm」の印刷可能領域を設けています。