photoshopCS5のスクリプトをカスタマイズする。
フォトショップCS5のスクリプトを使い易くする。
フォトショップにはレイヤーを自動で書き出す機能があります。
バージョンによっては、色々言い回しに違いがあるようですが、 フォトショップCS5では以下の通りでレイヤーを自動で書き出してくれます。
ファイル ↓ スクリプト ↓ レイヤーをファイルへ書き出し
ちなみに画質の最大数は12です。
こういうのも下に入力幅とか書いてあると親切ですよね。
このスクリプトで画像を自動で書き出してくれるのですが、 問題はファイル名です。 書き出すファイル名の頭へ文字列の追加は指定できるのですが、 アンダーバーと4桁の連番が自動でつけられてしまいます。
例 abc_0001_レイヤー1
なんと長いファイル名に…ありがた迷惑というか、 レイヤー名だけにしたいという指定ができません。
そこで荒業です。
ここからは、フォトショップCS5プログラム自体を修正するので、 不具合などが起きた場合は自己責任でお願いします!
なので、コンピュータ言語が分からない人は手を出さないでください!
OSはウィンドウズ7です。
Macの場合とは少し違いますが、 ファイルの場所は同じなので分かると思います。
フォトショップのバージョンによって、 フォルダ名が違います。
場所も違いますが、 ファイル名は同じようです。
手順
普通にCS5をインストールしていると、
コンピュータ ↓ ローカルディスクC の中にフォトショップほかCS5がインストールされています。
そして Program Files ↓ Adobe ↓ Adobe Photoshop CS5 ↓ Presets ↓ Scripts このフォルダまでたどると Export Layers To Files.jsx というファイルがあります。
これはスクリプトのファイルです。
なのでテキストエディタで編集が可能です。 その前に書き込み制限を解除して、 書き込み可能にしましょう。
書き込みを可能にしたら、 ファイルを開き、 1029行目あたり
var fileNameBody = fileNamePrefix; fileNameBody += "_" + zeroSuppress(i, 4); fileNameBody += "_" + layerName;
という記述があると思います。
これが自動でファイル名に連番をつけるという命令文で、 これを下記のようにコメントアウトして書き足します。
var fileNameBody = fileNamePrefix; //fileNameBody += "_" + zeroSuppress(i, 4); //fileNameBody += "_" + layerName; fileNameBody += layerName;
すると、正常に作動していれば、 レイヤー名のみでファイルを書き出すようになります。
abc_0001_レイヤー1 ↓ レイヤー1 頭語をつける場合は 好みですが、アンダーバーが自動でつかないので、 abc_ と入れると abc_レイヤー1 となります。 補足として Scriptsフォルダの中には Layer Comps To Files.jsx というファイル名があります。
ファイル名通り、 レイヤーカンプをファイルに書き出すスクリプトです。
同じように これは188行目あたりに
var fileNameBody = fileNamePrefix; fileNameBody += "_" + zeroSuppress(i, 4); fileNameBody += "_" + layerName;
というのがあるので、下記のように修正すれば連番を消すことが可能です。
var fileNameBody = exportInfo.fileNamePrefix; //fileNameBody += "_" + zeroSuppress(compsIndex, 4); //fileNameBody += "_" + compRef.name; fileNameBody += compRef.name;
これで、フォトショップCS5で書き出したファイル名から連番を消す作業から開放されるのですが、 あくまでも、自己責任でお願いします! 一切責任を負いませんのであしからず。
以上、「photoshopCS5のスクリプトをカスタマイズする」でした。