Noo*_*per 12 user-interface colors flutter
有没有办法检查颜色是暗还是亮,即颤动中的黑色色调或白色,并获得布尔值 true 或 false
sch*_*ger 15
您还可以使用该方法获取亮度并应用 W3C 指定的阈值。在 dart 代码中,这可能如下所示:
Color getFontColorForBackground(Color background) {
return (background.computeLuminance() > 0.179)? Colors.black : Colors.white;
}
Run Code Online (Sandbox Code Playgroud)
更多背景信息可以在这里找到:/sf/answers/276011641/
小智 10
要检查颜色是深色还是浅色,我们需要将该颜色转换为其灰度颜色。从 RGB 值中查找任何颜色的灰度的公式为:
灰度 = (0.299 * 红色) + (0.587 * 绿色) + (0.114 * 蓝色)
然后检查:
if(grayscale > 128){
// color is light
}else{
// color is dark
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2890 次 |
| 最近记录: |