Object set rgb colors:指定した色が微妙に違う?

Product :4D - 4D Server
4D : v15.4hf2
OS : Mac OS X

OBJECT SET RGB COLORSで指定したあと色味が少し違う様だったので
カラーピッカーからスポイトで色を確認してみました。
どうも指定した色と若干違う色になっている様です。

サンプル画像では、OBJECT SET RGB COLORS(*;“Rectangle”;0x00BEBEC1;0x00BEBEC1)と指定しましたが
スポイトで確認した色は、0xB0B0B4になっています。
[]19412956;“Your comment here…”[/]

https://github.com/4D-JP/release-notes/blob/master/v15/r4/README.md4D v15 R4>

ACI0093885 Mac版のみ。カラーピッカーを使用した場合,スポイトツールで選択した色よりも暗い色が返されました。

v15R4
v15.1 (194018)
v14.4 (194344) で修正

という問題が以前にあったのですが,そのときはNSColorSpaceの違いが関係していたように記憶しています。

ピッカーを外部接続ディスプレイ等で使用しているということはないでしょうか。

: Keisuke MIYAKO

ピッカーを外部接続ディスプレイ等で使用しているということはないでしょうか。

現象を確認したのは、MacBookProのモニターです。
よろしくお願いします。

原因がなんとなくわかりました。

ピッカー自体に問題がありそうです。
ACI0093885の件で、返り値を確認したところ正しい値が返ってきていました。
ピッカーの表示上のRGB値と返ってくる RGB値が違う様です。
4Dが強制的に補正している様ですね。 :frowning:

今回は16進数のRGB値がわかればよかったので、ピッカー上のRGB値を参照していました。

RGBつまみの右に歯車のアイコンがあると思います。

[]19413080;“Your comment here…”[/]

デフォルトのカラープロファイルは汎用RGBだと思いますが,

これを変更することでRGBのカラースペースが変わるはずです。

確認しました。

システム環境設定:ディスプレイ:カラーで設定されているプロファイルと一致させると正しい値になりました。
このディフォルトのプロファイルは、開くときにディスプレイで設定されているプロファイルと同じにする事はできないものでしょうか?

AppleのAPIを読む限り,この件に関する標準ピッカーの振る舞いは変えられないようです。

スポイトで色を選択すると,自動的に色空間が汎用(NSCalibratedRGBColorSpace)に切り替わる
注記:汎用は,Apple独自の色空間で,HTML標準(sRGB)ともデバイス(4D)とも違います。

Select RGB color / OPEN COLOR PICKERは,いずれもデバイスの色空間でRGBを返す
注記:ピッカーは,デフォルトでデバイスの色空間を表示しています。

つまり,ピッカーに渡されたRGBはデバイスの色空間で表示され,
ピッカーで選択したRGBはデバイスの色空間で返されます。

問題は,スポイトツールを使用した直後のRGB表示(ピッカー内)だけで,
色空間が「汎用」に切り替わるため,4D内で使用される値とは違います。

ですから,スポイトツールを使用した直後に色空間をデバイスに戻すか,
コマンドから返された値を使用するしかないようです。