趣味でフィルム写真を取っているのですが、編集の際はPhotoshopで調整レイヤーを使って色味の変更などをしています。
ただ毎回クリックをして複数の調整レイヤーを追加するのは面倒なので、勉強中のJSを使って自動でこれらの追加ができないか調べてみました!
ぜひ参考までにご覧ください。
Scriptを使って調整レイヤーを追加することはできない
頭っからこの記事の目的を否定するような内容ですが、現状Scriptで調整レイヤーを追加することはできないようです。
調べ始めた当初以下のようなコードでレイヤーを作成し、レイヤーの種類を調整レイヤーへ変更するという処理を行えないかと考えました。
var artLayerRef = app.activeDocument.artLayers.add();
artLayerRef.kind = LayerKind.CURVES;
ただ、上記コードを実行しても「レイヤーの種類はテキストにしか変更できない」という旨のエラーが出てしまうため調べてみると以下のような記事が。
Photoshopのスクリプトでは通常のレイヤーしか追加できず、また新規に作成したレイヤーの種類はテキストレイヤーにしか変更できません。
Actionで調整レイヤー追加の手順を記録し、それをScriptで呼び出すように方向転換
Scriptではどうしようもないということなので、Actionを使う方に方向転換しました。
もともとそこまで複雑な作業ではないので、アクションで記録してそれをScriptで呼び出せばいいんでは?と考え以下のコードを記述しました。
/*
<javascriptresource>
<name>Negs</name>
<about>Add adjustment layers for negaties</about>
</javascriptresource>
*/
app.doAction("ColorNegative","Negs");
実際にアクションの呼び出しをしているのは最後の一行**app.doAction〜**の部分になります。以下のような形でアクションセット、アクションネームを指定し呼び出します。
// app.doAction("your action name","your action set name");
app.doAction("ColorNegative","Negs");
下のコメントアウトで記載した部分はいちいち今回作成したスクリプトをメニューに追加しいちいちブラウズしなくても良いようにするためのものなので、おまけみたいな感じです。
/*
<javascriptresource>
<name>Negs</name>
<about>Add adjustment layers for negaties</about>
</javascriptresource>
*/
あとはこのスクリプトにショートカットキーを割り当てて完成です。
追記 アクションにショートカットキーを割り当てるだけでよかった、、
この記事を書き終える間際に気がついてしまいました、こんなめんどくさいことしないでもアクションにショートカットキー振ってあげれば済む話では、、と。