アプリケーション/バージョンアップに伴う注意点

 JavaScriptはWebブラウザ(Internet ExplorerやSafari、Firefox、Google Chromeなど)でしか動作しないのではないかと思っている人も多いかもしれません。実際には、ブラウザ以外のアプリケーション制御用のスクリプト言語として普及してきています。Adobe製品に限らずMacromedia(2005年にAdobeと合併)の製品なども以前から対応しています。
 JavaScriptは文法は同じなので、一度身に付けてしまえば、アプリケーション独自のオブジェクト部分を覚えるだけですみます。基本的な部分は同じですが、アプリケーションによって扱えるオブジェクトが異なります。このため、Illustrator CC 2015で作成したスクリプトはPhotoshopやAfterEffects、InDesign、Premierer、Dreamweaver、Flash、Fireworksではエラーになってしまい動作しません。また、アプリケーションのバージョンアップに伴って以前のスクリプトが動作しなくなってしまうことがあります。
 Illustrator CC 2015でもECMA Script (3rd Edition *1) にIllustrator CC独自のオブジェクトを追加し、各種処理/制御ができるようになっています。また、CS3以降ではAdobe Bridgeと連携させることができるようになりました。このため、Illustrator CC 2015ではできない処理もBridge CCを経由することで可能になるものもあります。例えば、Illustrator CC 2015には手軽にFTP, HTTP処理を行う機能やソケット通信を行う機能がありませんが、Bridge CCを経由することでサーバー上にある画像データなどをダウンロードしてIllustrator CC 2015で処理することができます。また、スクリプトでは面倒な処理はアクションで定義しておくことで、スクリプト制作の負荷を減らすことができます。



*1 ECMAScriptはバージョン5がありますが、Adobe JavaScriptではバージョン5の全ての機能や命令を利用できません。constなど一部の機能のみ対応しています。 最新版であるES6の機能は残念ながらIllustratorのJavaScriptでは利用できません。