レイヤーカンプ/レイヤーをファイルへ書き出し時にファイル名とレイヤー名の間に入る連番数字を消す方法


レイヤーカンプ/レイヤーをファイルへ書き出し時にファイル名とレイヤー名の間に入る連番数字を消す方法
レイヤーカンプ/レイヤーをファイルへ書き出し時にファイル名とレイヤー名の間に入る連番数字を消す方法

まずは前の記事「Photoshop「レイヤーカンプ」と「レイヤーカンプからファイルへ書き出し」から読まれることをオススメします。

それでもなんのこっちゃ?という方が大半だと思いますんで、早めに図で説明します。

PhotoshopCCの「書き出し」機能で「レイヤーからファイル…」や「レイヤーカンプからファイル…」を利用すると、ファイル名とレイヤー名の間に必ず数字とアンダーバーが入り込んでデータが保存されます。
レイヤーカンプ/レイヤーをファイルへ書き出し時にファイル名とレイヤー名の間に入る連番数字を消す方法01

これを例えば理想は下図のようにしたい!と思って
レイヤーカンプ/レイヤーをファイルへ書き出し時にファイル名とレイヤー名の間に入る連番数字を消す方法02

[ファイルの先頭文字列:]を変えても…
レイヤーカンプ/レイヤーをファイルへ書き出し時にファイル名とレイヤー名の間に入る連番数字を消す方法03

結果は下の通り。
レイヤーカンプ/レイヤーをファイルへ書き出し時にファイル名とレイヤー名の間に入る連番数字を消す方法04

この、場合によって邪魔になろう3つのアンダーバーと4ケタずつの数字を消してしまおう!という、設定画面で設定できない?裏技。
PhotoshopCCフォルダの中にあるスクリプトを書き換える技なので自己責任でお願いします!

補足として、今回はPhotoshopCCでのみ実践しております。
他のPhotoshopだとスクリプトが異なるため、同じ方法ができない可能性があります。

自分でスクリプトをいじるのに抵抗がある場合は、ファイル名を一括で書き換えできるフリーソフトを利用しましょう。あとバックアップは必須。

準備編1/3 スクリプトの場所

書き換えるフォトショップのスクリプトの場所はここです。

C:\Program Files\Adobe\Adobe Photoshop CC 2015\Presets\Scripts

エクスプローラー画面からデータやフォルダを探すときは、キーボードでフォルダの頭文字のアルファベットを1個押すと早いです。
programフォルダは、慣れない人が入っていじるのは動作不良の原因になりますので本当に注意が必要です。

[Scripts]フォルダまできたら、中に入って

Export Layers To Files.jsx(「レイヤーからファイルの書き出し」を行うスクリプト)
Layer Comps To Files.jsx(「レイヤーカンプからファイルの書き出し」を行うスクリプト)

の二つのファイルを探します。

参考画像↓
レイヤーカンプ/レイヤーをファイルへ書き出し時にファイル名とレイヤー名の間に入る連番数字を消す方法06

準備編2/3 バックアップはとっておく

直接中のスクリプトをいじるのは勇気以外も十分必要なので、任意のフォルダにバックアップとしてコピーペーストしておきましょう。
レイヤーカンプ/レイヤーをファイルへ書き出し時にファイル名とレイヤー名の間に入る連番数字を消す方法07

またスクリプトを書き換える作業も、安全を期して別の場所でコピペしたものを使いましょう。
レイヤーカンプ/レイヤーをファイルへ書き出し時にファイル名とレイヤー名の間に入る連番数字を消す方法08

準備編3/3 書き換えはテキストエディタを使おう

スクリプトはテキストツールにドラッグ&ドロップで中身を展開することができますが、windowsのデフォルトのメモ帳だとプログラムの改行が無視されてしまいます。
レイヤーカンプ/レイヤーをファイルへ書き出し時にファイル名とレイヤー名の間に入る連番数字を消す方法09

フリーソフトの「TeraPad」などで開くとキチンと表示されます。「TeraPad」はデフォルトのメモ帳よりずっと使い勝手が良いのでオススメのフリーソフトです。
レイヤーカンプ/レイヤーをファイルへ書き出し時にファイル名とレイヤー名の間に入る連番数字を消す方法10

実践編「レイヤーからファイルに書き出し」のスクリプトを書き換える

「レイヤーからファイルの書き出し」を管理している[Export Layers To Files.jsx]からメスを入れていきます。

[Export Layers To Files.jsx]をテキストエディタで開いたら、書き換える場所は3つ。

fileNameBody += “_”

という文字がある場所です。
レイヤーカンプ/レイヤーをファイルへ書き出し時にファイル名とレイヤー名の間に入る連番数字を消す方法11

それぞれの「fileNameBody += “_”」のある行のファイル名の役割は以下の通り。
レイヤーカンプ/レイヤーをファイルへ書き出し時にファイル名とレイヤー名の間に入る連番数字を消す方法12

これを下のように書き換えます。
レイヤーカンプ/レイヤーをファイルへ書き出し時にファイル名とレイヤー名の間に入る連番数字を消す方法13

上で行った事は

①1059行目と1077行目の行頭に“//”をつける。

②1060行目の「fileNameBody += “_” + layerName;」のアンダーバーを消す

です。

今更ながら比較的ゆるい当サイトにそぐわないような難易度で恐縮ですが、行の最初に“//”を入れるとその行の命令文は無視されるのです。

あとは書き換えたデータを保存し、Photoshopのフォルダ内の[Scripts]フォルダの中に上書きします。(コピーして置き換える)
くれぐれも先に元データのバックアップを忘れずに!
レイヤーカンプ/レイヤーをファイルへ書き出し時にファイル名とレイヤー名の間に入る連番数字を消す方法14

レイヤーカンプ/レイヤーをファイルへ書き出し時にファイル名とレイヤー名の間に入る連番数字を消す方法15

アクセス拒否されますが[続行]。
レイヤーカンプ/レイヤーをファイルへ書き出し時にファイル名とレイヤー名の間に入る連番数字を消す方法16

ではPhotoshopCCに戻り、以下の条件で[レイヤーをファイルに書き出し]してみましょう。
レイヤーカンプ/レイヤーをファイルへ書き出し時にファイル名とレイヤー名の間に入る連番数字を消す方法17

無事[ファイルの先頭文字列]で設定した文字+レイヤー名になりました。
レイヤーカンプ/レイヤーをファイルへ書き出し時にファイル名とレイヤー名の間に入る連番数字を消す方法18


レイヤー名が同じだと書き出しが途中で止まりますので注意です。

実践編「レイヤーカンプからファイルに書き出し」のスクリプトを書き換える

またも説明が長くなって涙で明日が見えませんが、「レイヤーカンプからファイルの書き出し」のスクリプトである[Layer Comps To Files.jsx]の方もやっていきましょう。

デフォルトだと下のように、[ファイルの先頭文字]と[レイヤーカンプの名前]の間に数字とアンダーバーが入り込みます。
レイヤーカンプ/レイヤーをファイルへ書き出し時にファイル名とレイヤー名の間に入る連番数字を消す方法19

要領はほっとんど「Export Layers To Files.jsx]の書き換えと同じです。

[Layer Comps To Files.jsx]をテキストツールで開いて

fileNameBody +=

で検索。
レイヤーカンプ/レイヤーをファイルへ書き出し時にファイル名とレイヤー名の間に入る連番数字を消す方法20

4ヵ所ひっかかりますが、書き換えるのは上の2つだけです。
レイヤーカンプ/レイヤーをファイルへ書き出し時にファイル名とレイヤー名の間に入る連番数字を消す方法21


193行目 if (fileNameBody.length > 0 ) { fileNameBody += “_” };
194行目 if (exportInfo.prefixIndex) { fileNameBody += zeroSuppress(compsIndex, 4) +”_” ; }



193行目 if (fileNameBody.length > 0 ) { fileNameBody += “” };
194行目 if (exportInfo.prefixIndex) { fileNameBody += “” ; }

このように。

上の行が連番の前のアンダーバー、下の行が連番の数字と後ろのアンダーバーで、その命令を削除した形です。

書き換えた[Layer Comps To Files.jsx]を「Export Layers To Files.jsx]の時と同じく、[Scripts]フォルダ内に上書きします。

PhotoshopCCに戻って「レイヤーカンプからファイル…」の書き出しをやってみましょう。
[ファイルの先頭文字列]と[各レイヤーカンプの名前]を変えてみました。
レイヤーカンプ/レイヤーをファイルへ書き出し時にファイル名とレイヤー名の間に入る連番数字を消す方法22

結果は以下のとおり。
数字とアンダーバーが消え、[ファイルの先頭文字]と[レイヤーカンプの名前]のみのファイル名の画像ファイルが生成できるようになりました。
レイヤーカンプ/レイヤーをファイルへ書き出し時にファイル名とレイヤー名の間に入る連番数字を消す方法23

windowsのProgramフォルダ内に入っていくやり方なので何ともオススメしにくい技でありますが、こういう技もあるんだーくらいに思っていただいて。

以上、「レイヤーカンプ/レイヤーをファイルへ書き出し時にファイル名とレイヤー名の間に入る連番数字を消す方法」でした。

 

関連コンテンツ

スポンサーリンク