Skip to main content
6681 Posts
特定の座標のRGBパラメータを取得し、そのパラメータの数値によって条件分岐するスクリプトを作りたい

特定の座標のRGBパラメータを取得したいです。 Photoshopにはカラーピッカーがあります。ScriptingListenerを用いて指定座標のカラーピッカーの処理を書き出したところ、内部処理では指定座標の色をダイレクトで設定までしてしまうため、書き出されるコードは、書き出したときにピックしたRGBパラメータに固定されてしまい、RGBを変数として取得することができないようです。 具体的には、ドキュメントの左上(1,1)座標の色が◇赤の場合はAを実行◇緑の場合はBを実行◇青の場合はCを実行というコード書きたいので、①特定座標のRGBパラメータを取得②パラメータを描画色に設定③描画色が(255,0,0)の場合、Aを実行という手順を計画していたのですが、カラーピッカーツールは「特定座標を描画色に変更する」という処理のため、①と②が同時に行われてしまいます。結果としてScriptingListenerに書き出されるコードは、「特定の座標のRGBを取得する」ではなく、「(r,g,b)を描画色に設定しました」となって出力されてしまうのです。したがって、ScriptingListenerで書き出しを行う際の(1,1)座標がRGB(255,0,0)だった場合、このコードで作成するスクリプトは常に描画色がRGB(255,0,0)がセットされてしまい、Aを実行しかできなくなります。 カラーピッカーで「指定座標のRGB取得する」を実現する方法、また、カラーピッカーを用いずに、「選択範囲のRGBを取得」など代替できる方法等はありますでしょうか?