Photoshopのデータ整理やLive2Dの素材分けに役立つ、レイヤー名の前に文字を追加する方法を紹介します。
選択したレイヤー名を一括で変更できるため、作業効率化に役立ちます。
目次
スクリプトを使用するメリット
- 選択したレイヤーの名前を一括で変更できる
- 「塗り_」「影_」などの接頭辞をまとめて付与できる
レイヤー名の前に文字を追加する方法
Photoshopの他の操作方法は、まとめ記事から確認できます。
あわせて読みたい


Photoshopの使い方まとめ|レイヤー操作・書き出し・スクリプト
Photoshopの記事を、やりたいことから探せるように分類しました。 同じ作業を何度も繰り返している場合は、スクリプトの項目もご覧ください。 各カテゴリーは閲覧数の多…
- 下記のコードをテキストエディタなどに貼り付けて保存します。
RenameLayerPrefix.jsx
//@target photoshop;
app.bringToFront();
if (documents.length) {
var prefix = "塗り_"
var selLayers = getSelectedLayersIdx();
for (var a in selLayers) {
selectLayerByIndex(selLayers[a]);
activeDocument.activeLayer.name = prefix + activeDocument.activeLayer.name;
}
}
function selectLayerByIndex(index, add) {
var ref = new ActionReference();
ref.putIndex(charIDToTypeID("Lyr "), index);
var desc = new ActionDescriptor();
desc.putReference(charIDToTypeID("null"), ref);
if (add) desc.putEnumerated(stringIDToTypeID("selectionModifier"), stringIDToTypeID("selectionModifierType"), stringIDToTypeID("addToSelection"));
desc.putBoolean(charIDToTypeID("MkVs"), false);
try {
executeAction(charIDToTypeID("slct"), desc, DialogModes.NO);
} catch (e) {}
};
function getSelectedLayersIdx() {
var selectedLayers = new Array;
var ref = new ActionReference();
ref.putEnumerated(charIDToTypeID("Dcmn"), charIDToTypeID("Ordn"), charIDToTypeID("Trgt"));
var desc = executeActionGet(ref);
if (desc.hasKey(stringIDToTypeID('targetLayers'))) {
desc = desc.getList(stringIDToTypeID('targetLayers'));
var c = desc.count
var selectedLayers = new Array();
for (var i = 0; i < c; i++) {
try {
activeDocument.backgroundLayer;
selectedLayers.push(desc.getReference(i).getIndex());
} catch (e) {
selectedLayers.push(desc.getReference(i).getIndex() + 1);
}
}
} else {
var ref = new ActionReference();
ref.putProperty(charIDToTypeID("Prpr"), charIDToTypeID("ItmI"));
ref.putEnumerated(charIDToTypeID("Lyr "), charIDToTypeID("Ordn"), charIDToTypeID("Trgt"));
try {
activeDocument.backgroundLayer;
selectedLayers.push(executeActionGet(ref).getInteger(charIDToTypeID("ItmI")) - 1);
} catch (e) {
selectedLayers.push(executeActionGet(ref).getInteger(charIDToTypeID("ItmI")));
}
var vis = app.activeDocument.activeLayer.visible;
if (vis == true) app.activeDocument.activeLayer.visible = false;
var desc9 = new ActionDescriptor();
var list9 = new ActionList();
var ref9 = new ActionReference();
ref9.putEnumerated(charIDToTypeID('Lyr '), charIDToTypeID('Ordn'), charIDToTypeID('Trgt'));
list9.putReference(ref9);
desc9.putList(charIDToTypeID('null'), list9);
executeAction(charIDToTypeID('Shw '), desc9, DialogModes.NO);
if (app.activeDocument.activeLayer.visible == false) selectedLayers.shift();
app.activeDocument.activeLayer.visible = vis;
}
return selectedLayers;
};RenameLayerPrefix.jsxを以下のフォルダに保存します。
C:\Program Files\Adobe\Adobe Photoshop CC\Presets\Scripts\- Photoshopを再起動します。
STEP.2 スクリプトを実行
- [ファイル] → [スクリプト] → [RenameLayerPrefix]を選択します。
- 選択中のレイヤー名に指定の文字が追加されます。
さらに便利に使う方法(ショートカット設定)
- [編集] → [キーボードショートカット]を開きます。
- 「ファイル」メニューの項目からスクリプトを探します。
- 任意のショートカットキー(例:「Ctrl + Shift + R」など)を割り当てます。
- ショートカットキーを押すだけで素早くスクリプトを実行できます。
レイヤーを操作するスクリプトは、ほかにもあります。
あわせて読みたい


Photoshop|マスク付きグループの統合と名前を保つスクリプト
Photoshopでは[Ctrl + E]でグループ(レイヤーセット)を統合できますが、マスクがついているとマスクが適用されずに残ったまま統合されてしまうことがあります。 マス…
あわせて読みたい


Photoshopスクリプト(jsx)│レイヤーから特定の文字を除去する方法
Photoshopのデータ整理やLive2Dの素材分けに役立つ、レイヤー名から特定の文字を除去する方法を解説します。 複数レイヤーの名前を一括で変更できるため、作業効率化に…
あわせて読みたい


Photoshopスクリプト(jsx)│レイヤーの一番上にある効果レイヤーを各パーツレイヤーに適用する方法
Photoshopで最上位にある効果レイヤーをパーツ分けされた各レイヤーへ適用するスクリプトを紹介します。 キャラクターイラストの仕上げやLive2Dのパーツ作成に役立ちま…
あわせて読みたい


Photoshopスクリプト(jsx)│スマートオブジェクトの中身を元に戻す方法
現在のPhotoshopでは、まず標準の「レイヤーに変換」を確認してください。 スマートオブジェクトを選び、レイヤーメニューのスマートオブジェクトから変換できます。 以…
まとめ
- 選択したレイヤー名の前に文字を一括追加できる
- Live2D用パーツ分けやPhotoshopのデータ整理を効率化できる
- ショートカットを設定するとさらに素早く実行できる
Photoshopのレイヤー整理を効率化するために、ぜひこのスクリプトを活用してみてください。
