graphics.hatenablog.com

技術系テクニカルアーティストのあれこれ

はじめての JSX

編集じゃなくビューアとして Photoshop を使うときが間々あるんだけど、
ファイルのリロードができないのがちょっと不便だなぁと。
いや、調べればそういう機能があるのかもしれないけど、
ちょうどいい機会だからスクリプトで書いてみることに。

概要だけメモっとく。


まずはファイル置き場。
基本的にどこでも構わないんだけど、インストールディレクトリの Presets\Scripts\ 以下に置いておくと、その後 Photoshop を起動したときに [ファイル]-[スクリプト] に表示されるようになる。

例えばここのディレクトリに Reload.jsx を置いて [編集]-[キーボードショートカット] から F5 に登録しておくと、それ以降は F5 を押すと Reload.jsx が呼び出されるようになってなかなか便利。

今回の場合 Reload.jsx の中身は以下の通り。

// get filepath and close
var filename = activeDocument.path + "/" + activeDocument.name;
activeDocument.close(SaveOptions.DONOTSAVECHANGES);

// open
var file = new File(filename);
activeDocument = app.open(file);

中身は Photoshop API を叩いてるだけの Javascript だから、解説とかは特になし。

最後にリファレンス。
まずは「Photoshop Scripting Guild」、インストールディレクトリの「スクリプティングガイド」以下にある。クイックスタート的な内容になってる。

API 一覧は同じくインストールディレクトリの Scripting\Documents\ 以下にあるけど、PDF はちょっと使いにくい。何か適当な JSX ファイルをダブルクリックすると ExtendScript Toolkit というのが起動するから、そこから [ヘルプ]-[オブジェクトモデルビューア] を起動するのがいい。

こんなかんじ。
f:id:hal1932:20130928200649j:plain


以上!