カスタムラベルにテキストを描画します。色:背景がDARKの場合は白、LIGHTの場合はBLACK
ユーザーはラベルの背景を変更できますが、コントロールの背景は指定された背景に応じてテキストの可視性に対応します。
バックグラウンドがDARKのとき、私はBLACKフォアグラウンドが必要なときに白い前景テキストを描きたいと思います。
色が薄いか暗いかを「理解する」方法は?
カスタムラベルにテキストを描画します。色:背景がDARKの場合は白、LIGHTの場合はBLACK
ユーザーはラベルの背景を変更できますが、コントロールの背景は指定された背景に応じてテキストの可視性に対応します。
バックグラウンドがDARKのとき、私はBLACKフォアグラウンドが必要なときに白い前景テキストを描きたいと思います。
色が薄いか暗いかを「理解する」方法は?
単純な解決策は、背景色の色成分を追加し、それらを閾値と比較することです。
青の重みを低くしたい場合があります。 0.3*R+0.6*G+0.1*B
は一般的な選択です。
このリンクはあなたに役立つと思います。
How do I determine darker or lighter color variant of a given color?
私は与えられた色のより暗いまたはより明るい色を必要としません。与えられた色がDARKかLIGHTかどうかを判断する必要があります。 – serhio
http://stackoverflow.com/questions/97646/how-do-i-determine-darker-or-lighter-color-variant-of-a-与えられた色/ 97697#97697 –
@KMån:私はより暗くて明るい色の変種は必要ありません。私は、与えられた色が単独で明るいか暗いかを検出する必要があります。 – serhio
あなた自身の答えを受け入れることをお勧めします。あらかじめ定義された関数を使うことは明らかにホイールを再発明するよりも優れています。 – CodesInChaos