javascript - 两个选定的 rgb 颜色之间的随机颜色(JavaScript)

标签 javascript random colors rgb

使用以下 js 片段...

rgb(' + Math.floor(Math.random() * 128).toString(10) + ','
      + Math.floor(Math.random() * 128).toString(10) + ','
      + Math.floor(Math.random() * 128).toString(10) + ')

...随机“深色”颜色是可能的。

有没有办法在颜色之间随机化?一个是黑色的,另一个是蓝色的——以及它们“之间”的随机颜色?棘手还是简单?

最佳答案

RGB 在 0 0 0 时为黑色,并在 255 255 255 时继续变亮为白色。

如果您只想要几种色调,试试这个网站:http://www.rapidtables.com/web/color/RGB_Color.htm 将鼠标悬停在托盘上,查看下方 R/G/B 编号的变化情况。

之后,只需要编写一个算法来获得任何特定颜色的阴影。(在您选择的范围内使用 math.random)

Math.floor(Math.random() * 10) + 50 给出 10 到 50 之间的随机数。

以下是您(大致)获得所有色调的方法:

R+(X * (255-R))  
G+(X * (255-G))  
B+(X * (255-B))  

RGB 在您的情况下将为 0207239
X 是着色因子(使用0.250.50.75 得到整数)。系数越大,越亮。

例如:

0+(0.25 * (255-0))  
207+(0.25 * (255-207))  
239+(0.25 * (255-239))  

将为您提供 0,219,243,一种比 0,207,239 更亮的色调。冲洗并重复!



Edit2:如果您只想要介于 0,207,239 和黑色之间的阴影,有一种更简单的方法可以实现。

继续从所有三个值中减去一个 X(同样,一个修饰符,它越大,每次通过时颜色越深)。 对于 X=20:

0,207,239 > 0,187,219 将是较深的蓝色阴影,一旦达到 0,0,0,您就会变成黑色。

祝你好运!

关于javascript - 两个选定的 rgb 颜色之间的随机颜色(JavaScript),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25193110/

相关文章:

haskell - Vscode Haskell 语法突出显示颜色突然不起作用或丢失

javascript - VueJS 和 AmazonPayButton javascript 错误

c++代码结果输出不同,具体取决于执行方法调试与运行

php - 不重复的随机链接 - 用户 session

c++ - 如何在 OpenGL 中改变颜色?

css - 如何获得正确调整的 chrome 渲染颜色的 CSS 颜色代码?

javascript - 如何学习 primefaces javascript API?

Javascript -- Unix 时间到特定时区

javascript - 我怎样才能让我的光滑 slider 像它应该的那样工作?

c - 如何制作确定性随机数生成器?