Photoshopで、開いているファイルの名前を、新規レイヤーの名前にするスクリプト
~~~~~ここから~~~~~
//ファイル名取得
var doc = activeDocument;
var docName = doc.name;
docName = docName.substring(0,docName.lastIndexOf(".")); //拡張子除去
docName = decodeURIComponent(docName); //文字化け対策
//レイヤー構成の取得
var layerObj = doc.artLayers;
// レイヤーの追加
var newLayer = layerObj.add();
layerObj[0].name = docName; //ファイル名をレイヤー名に
~~~~~ここまで~~~~~
ファイル名の文字化けに悩んでいたところ
パス名に日本語が含まれている場合、ファイル名が文字化けするので文字化け対策が必要だと分かった。
★レイヤー名の変更について
var newLayer = layerObj.add(); // 新規レイヤーを追加
newLayer.kind = LayerKind.TEXT; // レイヤー種別をテキストレイヤーに設定
newLayer.name = docName;
だとエラーが出ない。
var newLayer = layerObj.add(); // 新規レイヤーを追加
newLayer.kind = LayerKind.NORMAL;
newLayer.name = docName;
だとエラーが発生。
※コメント投稿者のブログIDはブログ作成者のみに通知されます