标签: .net gdi+
我在自定义标签中绘制了一些文字。
用户可以修改标签背景,但控件应根据指定的背景调整文本可见性。
所以,当背景为DARK时,我想要绘制白色前景文本,当它的LIGHT我想要BLACK前景时。
如果颜色是浅色还是暗色,如何“理解”?
答案 0 :(得分:2)
使用Color.GetBrightness()
Color.GetBrightness()
答案 1 :(得分:1)
一个简单的解决方案是添加背景颜色的颜色分量,并将它们与阈值进行比较。
你可能想让蓝色的重量更轻。 0.3*R+0.6*G+0.1*B是一种常见的选择。
0.3*R+0.6*G+0.1*B
答案 2 :(得分:0)
我认为此链接可以帮助您。
How do I determine darker or lighter color variant of a given color?