原理:RGB颜色根据计算'灰度'的公式,可以转化为黑白2种颜色,实现二值化。
业务场景的应用:可以根据背景颜色,取一个黑色或白色的颜色,作为背景色上的文案字体颜色
具体代码:
function getTextColor(backgroundColor){
var threshold = 128;//阈值
var r = parseInt(backgroundColor.substring(0,2),16) * 0.3;
var g = parseInt(backgroundColor.substring(2,4),16) * 0.59;
var b = parseInt(backgroundColor.substring(4,6),16) * 0.11;
var rgb = r + g + b;//先把图像灰度化
if (rgb > threshold)//然后按某一阀值进行二值化
{
return "000000";
}else
{
return "FFFFFF";
}
}