gpt4 book ai didi

javascript - 如何使用 javascript 从十六进制值列表中获取最亮的颜色

转载 作者:行者123 更新时间:2023-11-30 15:22:26 25 4
gpt4 key购买 nike

我有一个十六进制颜色 #000000 值的列表。如何使用 javascript 从十六进制颜色列表中获取最亮的颜色?

任何帮助将不胜感激

最佳答案

根据这个formula ,您可以像这样计算 RGB 颜色的亮度(亮度):

L = 0.2126*R + 0.7152*G + 0.0722*B;

你可以把它应用在不难的十六进制上,然后得到亮度最大的颜色:

function lum(hex) {
var r = parseInt(hex.substr(1, 2), 16),
g = parseInt(hex.substr(3, 2), 16),
b = parseInt(hex.substr(5, 2), 16);

return 0.2126*r + 0.7152*g + 0.0722*b;;
}

function lightest(colors) {
var maxIndex = 0,
maxLum = lum(colors[0]);

for(var i = 1; i < colors.length; i++) {
var iLum = lum(colors[i]);
if(maxLum < iLum) {
maxLum = iLum;
maxIndex = i;
}
}

return colors[maxIndex];
}

console.log(lightest(["#ff0000", "#ffcd00", "#000000"]));

关于javascript - 如何使用 javascript 从十六进制值列表中获取最亮的颜色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43508227/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com