【Photoshop】『レイヤーカンプをファイルに書き出す』改変【解決!】

Photoshop
Photoshop他のソフト

この記事は約12分で読めます。

Adobe Photoshop 2020 Windows10 でも使えます。【確認 2020/11/26】

64ウイン7でPhotoshopCS5Extendedで作成。

 

この記事 要約

大量のファイルの中にあるレイヤーカンプ
『アクティブファイル名-連番.jpg』のファイル名にして


バッチ処理でファイルに書き出したい。

『連番』をつけられるのがポイント!

連番がつけられないと、バッチ処理に使えません。

 

何回か改変して、望みのものができました。

 

いちおう、どんなスクリプトなのか、下まで読んでみて下さい。

ダウンロードは、もちろん、自己責任で。

 

 

パッチ処理に使わなくても、簡素なファイル名スクリプトとして使えます。

---------12/08/16 (木) 10:09 追加
スクリプトダウンロードあり
・レイヤーカンプのファイル名先頭に日付を入れるスクリプト。

・同じく、先頭にアクティブファイル名を入れるスクリプト。
・同じく、先頭に拡張子の無いアクティブファイル名を入れ、『レイヤーカンプ』を削除し、連番を二桁にするスクリプト。
---------

このスクリプトを使ってできること。

元ファイル(アクティブファイル)名が『002』の場合。

『ただ、後ろに連番をつけるだけ』です。

 

デフォルトの、『~レイヤーカンプ~』とか、つかないです。

 

このスクリプトを作ろうとしたきっかけ。

レイヤーカンプが便利! ↓ 

【Photoshop】3分でわかるレイヤーカンプ【こんな機能!】

【Photoshop】3分でわかるレイヤーカンプ【こんな機能!】 | DAZ3DでCreate3D-3d。CG制作作業日記

 

なので、多用してたんだけど、

レイヤーカンプをすると『レイヤーカンプ1』とかなんか、

 

『おなじファイル名』でしか書き出されないので

バッチ処理で使えない。

 

3D作業をしていると、

テクスチャを直しながら何度もDaz Studio4で再確認する。

その際に、『おなじファイル名』では、Daz Studio4を再起動しないと

『違うファイル』だと認識してくれないので非常に困る。

 

『レイヤーカンプを書き出すスクリプトをいじる』なんてことを

思いつかなかったので

書き出したファイルのファイル名を手作業で変更していた。

 

邪魔臭いので、それをフォトショで、

ドロップレットを使って変更していた。

 

でも、とにかく、その作業が多くなってきて

こんなことでは追いつかなくなった。

 

数日うんうんうなっていたら

『レイヤーカンプ』をすること自体がフォトショのスクリプトを呼び出す

 

つまりは、そのスクリプトをいじってしまえば、

ファイル名はどうにかなるんじゃない?

 

それでちょっとずつ、スクリプトをいじった。

 

レイヤーカンプ第一スクリプト。

フォトショップでレイヤーカンプを書き出せる。

スクリプトで全自動で、全部のカンプを一気に書き出せる。

↑選択場所が一つ上。『レイヤーカンプからファイルに……』です。

↓こんな感じね。

これをアクションに登録。

すると、ファイルを開いてアクションを使えば書き出せて超楽~♪

現時点で、50枚近くのファイルから、

レイヤーカンプを出力しようとしてるわけです。

 

バッチ処理でこのアクションを実行すればカンタンじゃーんと思ってたら無理無理無理。

 

↓ファイル名が問題。


↑のファイル名、どこにも、元ファイル名が入ってない。

書き出すときにファイル名を入れないと、
永遠にこの名前でファイルが作られる。

 

つまりは、バッチ処理で、テキストスベースに連番かなにかを入れない限り
永遠に置き換えが行われて、

すべてのカンプを出力することはできない。

 

すべてのカンプは『書き出されてはいる』けれど最後に残るのは、1ファイルだけ。

 

手作業でカンプ出すときに連番つければいいんだけど
そんなこと自動処理でできるようにしといてよ、って
話しじゃないです?

 

ファイル名を取得して、
0000レイヤーカンプ 1』の前に入れる
だけやんか。

 

一応ネットで検索してみたけど、

私の英語力の問題か、この当時(2012年8月16日)は見つけられなかった。

 

日付取得のためのWindowsスクリプトはこないだ作った。

ファイル名に日付を入れる【Windows7 64bit】 | DAZ3DでCreate3D-3d。CG制作作業日記

ファイル名取得もできるはず!

フォトショのスクリプトで
『ファイル名を取得』して


レイヤーカンプを書き出すときの
ファイル名の先頭に入れるだけ。


こんなのどなたかがスクリプト作ってるでしょ。

と思ったけど
公式サイトのプラグインとかスクリプトを検索しても見つからない。
ネット上を検索しても
語句が悪いのか、見つけられない……

『レイヤーカンプを大量に使う人』って
ファイル一つ一つ全部手作業で出力してんの?


私↑これだけのファイルでも、手作業ですんのいやだよ(T-T)

ということで、スクリプト改変に手を出した!

 

 

スクリプトを作り変えたいんじゃなく、
一定コードを挿入したいだけだから、難しいことじゃないはず!

ということで、まずはスクリプトを見てみることに。

 

スクリプト触ったのは、こないだ日付取得スクリプト作ったときが初めてです。
今回で二回目!
何事もチャレンジ!

映画『アルマゲドン』でもブルース・ウィルスが言ってる。

「前例がない!」

「新しいチャレンジだ!」

チャンレジだ!

 

フォルダの
『レイヤーカンプをファイル出力』のスクリプトを
コピーして開く。

検索機能とか、ハイライトがよく分からなかったので、
分かりやすいので見ようと、このスクリプトーをコピー。

この日記ブログの記事作成のテキストエリアにペースト。

非公開でプレビューする。

検索窓にキーワードを入れると、独自カラーでハイライトされるので、
まず『NAME』で検索。

そして、そのまわりで変数を確認して、その単語を次々検索窓に入れていく。

こんなかんじにハイライトされるわけですね。見やすい。
『NAME』に関係ないところは触らないいじらない見ない。

見てる場所はブラウザなので、うっかり何かのキーを押して
知らない間にスクリプトを改変してしまう心配も無い。
↑これが結構怖い。全角空白とか入れちゃうと、見つけるの大変。
 というより先に、なんで動かないのかの理由が不明瞭になる

 

ブラウザで見てると、
ハードディスクCにあるプログラムフォルダの中身は

書き換えできないので、心配いらない

検索窓に入れてないキーワードがハイライトされているのは、

Firefoxのwiredmarkerのハイライト機能。(2020/09/05時点では、廃盤)

書き出しファイル名を決めているのは下記と↓

↓ここ。

ファイル名取得コードを↓の上に挿入して
その変数を↓の赤い部分に、書けばいいんじゃないかと思うんだけどどうだろう。

自分でスクリプト作れないので、
ファイル名取得コードの検索。

……
  ……

     ……

日付取得コード発見!
クリエイター手抜きプロジェクト (編)
↑フォトショップにスクリプトなんてもんがあるんだと
初めてしったサイトさん。

別になんだっていいんだよ。
元ファイルは連番なんだから
書き出すときも連番でされるし、(多分)
されないとしても、とにかく『ファイル名が違う』状態であれば
上書きされない
から。

そういう点でいうと、『同じファイル名+連番追加』でもいい。
けど、それって、『同じファイル名かどうか』を探すプログラムが必要だから
『何か別のユニーク名を付け加える』ほうが早いしカンタンだと思う。

ファイル名が一番いいけど、別に書き出した日付に秒数があれば
一秒で二つのファイルは処理してないから
ファイル名が重なることは無いはず。

 

つくづく、レイヤーカンプの書き出しが

なんでファイル名を先頭に付けてくれなかったのかと

それにつきる。

 

レイヤーカンプの接頭辞に、

アクティブファイル名がつかない方が便利なのかなぁ?

 

このスクリプト見てると、スクリプト内で
アクティブファイル名を取得してるように見えるんだけど……

 

何かの設定でファイル名追加できるのかな……わかんない。

 

さて問題です。

その日付取得コードをどのように組み込めば良いでしょうか。

 

ってとこで今止まってます。

 

クリエイター手抜きプロジェクト (編)
↑の「ScriptingListener」ってのをつかったら早いのかな、ともくろんでいる。

 

12/08/12 (日)  8:52
---------
参考サイト様
Adobe Photoshop CS5自動化作戦

クリエイター手抜きプロジェクト (Photoshop編)
Windows7 64でも問題なく動きました♪

Nature Valley: Photoshop用ノンブル自動化javascript アーカイブ

Adobe Forums: photoshopでファイル名の取得&入力の自動化

---------
12/08/12 (日) 10:02

できた!

↓コードはここを追加しただけ。

↓かなりファイル名がウザいけど(笑)

どうせ、リネームソフトで一気に連番に変えるので
出力名はどうでもいい。
重なって置き換えにさえならなければ。

 

リネームソフトは『Flexible Renamer』オススメ。

このスクリプトをアクションに登録してバッチ処理ができればオーケー。
確認に入る。

 

---------
12/08/12 (日) 10:11

既存の場所にスクリプトを移動。

アクションに登録。

バッチ処理開始。

できたっ!

(良く見たら、日付がダブってる)

うわー。
ちょーかんげきー♪

どんだけ楽になったか……うっとり♪

---------
12/08/12 (日) 11:04 追加

日付がダブらないよう修正しました。

---------
12/08/13 (月) 18:03
レイヤーカンプが二枚以上無いと書き出しができない
および
書き出しされない
不具合発生。

その場合でも、同じカンプでもとにかく二つ以上あれば、正常に書き出せます。
これをバグとりする能力は私には無いです。

---------

ESET Smart Securityでファイルを調査した結果です。

上記ご了承の上、ご入り用の方はどうぞ。
自己責任で、ノークレームでね!
---------

---------
改変2!
上記だと、『書き出せるだけ』なので、
やはり『アクティブファイル名取得』にしました。


ファイル名がわからないと、
どのファイルのカンプなのかわかんなくて困ったので。(当たり前)

 

元々アクティブファイル名を取得する変数はスクリプト内にありました。
↓の赤四角がそう。なんでこれを出力に使ってくれないんだろう……

私が改変した場所。

前述の、すでにある変数『docName』を↑の赤四角に追加しただけです。
前よりよっぽどすっきり簡単!

アクティブファイル名取得してるってのわかってたんだから、

さっさとこうすれば
日付取得スクリプトなんて必要なかったのにw

 

日付取得スクリプトは削除。

 

上記の改変2スクリプトは↓。
同じように、自己責任、ノークレームでね♪

--再改変---------12/08/16 (木) 10:59
改変3
---------

ファイル名を↑まで簡略。
『拡張子無しの元ファイル名_連番(二桁)』です。

うん。満足しました♪
これで、このスクリプトをいじることは無いでしょう。
---------

五時間近くがんばってたらしい。

スクリプトダウンロード。

マイクロソフト公式、ワンドライブの、

ダウンロードリンクです。

 

クリックして、ダウンロードして、好きなところに置いて使ってください。

LayerCompsToFiles_ActFileName_rs.jsx
JSX File

 

スクリプト内のコメントは日本語で記述しています。

 

私の使用例。

私は、このスクリプトを下記に保管しています。
 
\ピクチャ\Material collection\0Photoshop\Presets\スクリプト
Cドライブにデータを起きたくないからです。
 
アクションを使うときもここからロードしています。

こんなふうに、アクションで登録しています。

  1. レイヤーを作成。
    1. レイヤーが一枚の場合にも使えるように。
  2. レイヤーの名前を『カンプ用、削除する』に変更。
    1. あとで削除がしやすいように。
  3. レイヤーカンプ作成。
  4. レイヤーカンプをもう一度作成。
    1. レイヤーカンプが一枚だと、このスクリプトが使えないため。
  5. スクリプトを呼び出す。
  6. 書き出しされる。
 
レイヤーが一枚でも使えるので、
psdファイルを『jpg』などに変換する、スクリプトとしても使えます。
 
 

スクリプトを呼び出すと、

『どの拡張子で書き出すのか』とか聞かれるので

拡張子を指定して、アクションを作成してください。

 

私は下記のように、三通り作っています。

  1. カンプを『jpg』で書き出す。
  2. カンプを『png』で書き出す。 ← 使えません。2020/11/26
  3. カンプを『jpg』で書き出したあと、Photoshopファイルを保存して閉じる。

 

 
2020/11/26 追加
『ピングで書き出す』をすると、エラーが出て、書き出しができません。
https://twitter.com/amakawawaka/status/1331773661980725249
改変できるかた、是非、改変して、スクリプトを私に下さい。
 
 

 

このアクションを下記レイヤーで実行すると

『カンプ用、削除する』というレイヤーが新たに作られます。

これは、何もデータが入っていないので、たまったときに一括削除します。

 

 

---------近況---------
今日は、三時半に起きました。

 

そして今日は、コミケ当日です。
コミケは一昨日からだったんですが
オリジナルで参加している私の参加日が今日です。
東京の優秀な売り子嬢お二人に任せてます。いつもありがとう!

で、ひちじはんに電話。
何もなきゃ連絡なんてないので何か不都合があった様子。

搬入した荷物が所定の位置にありません……(真っ青……)

私が搬入ミスして、『不明』の所にあったらしい。
ゴメン、売り子嬢ズ!

早いうちに見つかった良かった。
優秀な売り子嬢ズに感謝。
久美ちゃん、かなちゃんいつもありがとうっ!

今日は楽しんでね!
ほしい本が楽々入手できるように祈ってます!

よっし、今日もがんばるぞーっ! オー!

そうだ、冬コミの申し込みしないといけないんだ。

冬コミの申し込みが終わるまでが夏コミですよ!

って本当名言。

○○○ 晶山 嵐 ○○○ しょうやま らん ○○○

 

【この記事を更新した日 2020/11/26 10:51 】

 

 

コメント

Translate »
%d人のブロガーが「いいね」をつけました。