PhotoshopJSXで特定構造のレイヤーグループを作成する

PhotoshopJSXで特定構造のレイヤーグループを作成する

今回はフォトショのプログラミングのお話です。私はある作業をするときに、同じ構造のレイヤーグループをいくつも使うことがあり、めんどうなので自動化したメモです。


完成像

作ったのは以下のようなものです。

実行するとダイアログが出て、グループ名を指定すると、

その名称のグループが作成され、その中に特定構造のレイヤーが作成され、中の任意のレイヤーが選択された状態になる、というもの。

これが作業しながらどんどん増えていくのですが、適宜、用が済んだら選択して「Ctrl+E」で結合しちゃいます。

作業中はグループがたくさん開いてわりとウザいので、ショートカットで全グループ折り畳みを併用しています。

コード

スクリプトファイルの作成と実行までは以下の記事をご参照ください。

コード自体はこんなかんじ。

inputName = prompt( "グループ名" );
if ( inputName ){ makeGroup(); }

function makeGroup() {
  actvLy = activeDocument.activeLayer; //アクティブレイヤーを取得
  ls = activeDocument.layerSets.add(); //グループの作成
  ls.name = inputName; //グループ名の変更
  if ( actvLy ) { ls.move( actvLy, ElementPlacement.PLACEBEFORE ); } //移動
  ly1 = ls.artLayers.add(); //レイヤー作成
  ly1.name = "A"; //レイヤー名の変更
  ly2 = ls.artLayers.add();
  ly2.name = "B";
  ly3 = ls.artLayers.add();
  ly3.name = "C";
  ly4 = ls.artLayers.add();
  ly4.name = "D";
  ly5 = ls.artLayers.add();
  ly5.name = "E";
  activeDocument.activeLayer = ly1; //ly1レイヤーを選択
}

ニッチな自動化大好きマンです!

公開日:2020/06/27

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください

コメントは承認制ですので、反映までしばらくお待ち下さい。(稀にスパムの誤判定にて届かないこともあるようですので、必要な際はお問い合わせからお願い致します。)