请问怎样区别颜色的深浅?(50分)

  • 主题发起人 主题发起人 吴优
  • 开始时间 开始时间

吴优

Unregistered / Unconfirmed
GUEST, unregistred user!
我想在Form上画一根线,当Form.Color为深颜色时画白线,当Form.Color为浅颜色
时画黑线,怎样区别颜色的深浅呢?
 
判断颜色范围,可以吗?
 
将颜色转换为明度,明度大于50位浅色,明度小于50位深色。
RGB -> 明度的转换公式我忘了,可以查查Photoshop的SDK
 
我给你提一个简单的办法,不知能否满足你的要求,在绘线之前加入这一句:
Canvas.pen.mode:=pmNot ;
 
将颜色转换为灰度值(0.11*R+0.59*G+0.3*B),大于128的为浅色,小于128的为深色
 
接受答案了.
 
后退
顶部