質問: photshopのrgb情報の自動抽出 photshopで作業しています。 今、いろいろな単色の画像が1000枚ほどあります。 このいろいろな単色のrgb情報を、ファイル名とともにリスト化して、別の作業に使いたいのです。スクリプトでも何でもかまいません。1000枚のrgb情報を一気に取り出す方法はございませんか?全部手作業で取り出すとなると大変すぎて困っています。 ご存じの方やアイデアをお持ちの方、何卒よろしくお願いいたします><
回答: スクリプトを使用すれば簡単に実現できます。 macかwindowsかでスクリプト言語が異なりますが(java scriptがありますがくわしくありませんので)、流れは同じです。 流れとしては 0-1.テキストファイルを開く(テキストエディタ起動) 0-2.photoshopを起動。 1.photoshopでファイルを開く。 2.座標(1.1)にカラーピッカーを配置する。 3.色情報を引き出し、ファイル名と色成分をテキストファイルに書き込む。 このとき扱いやすいようにタブ区切りで書き出していきます。 4.ファイルを保存せずに閉じる 1~4をファイルの分だけループします。 以上が終わったらphotoshopを閉じ、テキストエディタも保存して閉じます。 情報が見つかりにくいであろうphotoshopオブジェクト部のvbs(=window)でのサンプルを以下に記述しますので、参考にされてください。 少し書き換えればvbやvbaでも動作します。 テキストエディタに書きコードをコピー&ペーストし、保存します。 拡張子を.vbsに書き換えます。 photoshopでテスト画像を開いた状態で、そのvbsの書類をダブルクリックするとファイル名と色成分が書かれたメッセージボックスが表示されます。 -----以下をコピー&ペーストする dim appref set appref = createobject( "photoshop.application" ) 'アクティブドキュメントを測色の対象にする dim adoc set adoc = appref.activedocument 'カラーピッカーのセット ピッカーはピクセル座標の1,1に。 dim mycolor dim myrgb set mycolor = adoc.colorsamplers.add(array(1,1)) set myrgb = mycolor.color.rgb 'ファイル名とrgb成分の表示 rgb値は整数に変換しています。 msgbox("filename:" & adoc.name & " r : " & cint(myrgb.red) & " / g : " & cint(myrgb.green) & " / b : " & cint(myrgb.blue)) 'カラーピッカーの消去 mycolor.delete()