考虑到基色,如何通过材料设计准则确定OnPrimary颜色是什么?

问题描述 投票:0回答:1

material color tool中有一个可以选择原色的地方,它向您显示原色上的文本颜色。

给出十六进制字符串中的颜色,如何知道该颜色上建议的文本颜色是什么?

例如

某些颜色会建议文本为黑色

enter image description here

其他人会说应该是白色

enter image description here

观察:任何语言都可以,只想知道执行此操作的逻辑/函数是什么。

colors angular-material material-design material-ui materialize
1个回答
0
投票

他们写了一些关于text legibility的内容。除此之外,我玩了一些。似乎它是该颜色的r,g,b部分的加权平均值。蓝色的影响明显大于绿色,绿色的影响略小于红色。因此可能类似于(1*r + 0.9*g + 1.2*b) / 3.1 > 0xff(2.85是权重之和)。如果超过阈值,则文本为黑色,否则为白色。

© www.soinside.com 2019 - 2024. All rights reserved.