美文网首页让前端飞Web前端之路小程序
小程序插件—随机生成搭配的背景色和文本色

小程序插件—随机生成搭配的背景色和文本色

作者: 玲儿珑 | 来源:发表于2019-06-11 21:33 被阅读10次

在看这篇文章的很多童鞋们,应该有很多平时会code一些东西,也相信多少有过这样的小烦恼:视觉对不同的块想要有所区分,呈现出的界面显单调啊...,此时大家估计已经猜到我们需要什么,对,颜色!eh~,那这块用这个色,那块用这个色,开始还都美感爆棚,挑来挑去搭配的不亦乐乎。可是过阵子,啊~ 这个用哪个色呀 这个色用的太多了 这个不好看啊、没色可挑了 en 在修来改去 十几分钟过去了~ 最后,颜色还是那么不好看,还影响了心情!
自己设置颜色值,效果不好、浪费时间还影响心情,那咋办?灵光一闪,随机生成呗!秒出还不影响心情,还能每次看到不同的色彩。 那如何随机呢,现在我们走入本文正题。

主要功能

随机生成视觉搭配的背景色和文本色

设计原理

通过随机生成色值,解决了我们对颜色的需求。但如何生成,要生成什么样的,才是重点。,这里仅鉴于我对色彩搭配的浅薄了解,作出如下设计:

  1. 背景色和文本色采用互补的方式进行搭色,已最大概率的保证随机出的背景色和文本色深浅明显,易于辨别;
  2. 采用颜色的rgb值,通过随机方法生成0-255之间的数,分别赋给rgb的三个值r,g,b;
  3. 经实践,为美观一点,背景色给予20的透明度。
  4. 综上,背景色即为rgba(r,g,b,.2),文本色即为rgb(r,g,b)

具体实现

依上述原理进行如下实现:

  1. 随机生成0-255之间的数
    Math.round(Math.random()*255)
  2. 生成背景色和文本色
let c = [Math.round(Math.random()*255), Math.round(Math.random()*255), Math.round(Math.random()*255)] 
let bgColor = 'rgba('+c[0]+','+c[1]+','+c[2]+',.2)'
let color = 'rgb('+ (255-c[0]) + ',' + (255-c[1]) + ',' + (255-c[2]) + ')'

就这样,一个简单的搭配色生成器就出来了,要你不再烦恼😊。完整代码呈现如下:
github分享:https://github.com/linger777/xiaochengxu/blob/master/xcxmodule/src/readmes/GENERATECOLOR.md
gitee分享:https://gitee.com/linger777/xiaochengxu/blob/master/xcxmodule/src/readmes/GENERATECOLOR.md
有需要的童鞋自取。如何使用这里就不赘述了,点击上述链接就可看到。

番外

估计看过后的童鞋,会觉得就这么简单就完事了吗?是的,目前就是这样了~,以后若遇到更好的颜色搭配理论支撑,将及时调整实现。


PS:小伙伴们在使用过程中,如有好的想法,欢迎提出宝贵建议,一起改进。

相关文章

  • 小程序插件—随机生成搭配的背景色和文本色

    在看这篇文章的很多童鞋们,应该有很多平时会code一些东西,也相信多少有过这样的小烦恼:视觉对不同的块想要有所区分...

  • ios 生成随机背景色

    利用arc4random()生成随机背景色

  • Android – 随机生成背景色

    下面我们要实现的上面这样的效果,随机变换颜色,我们都知道颜色的取值范围是0~256,这样就好办了。我们可以使用随机...

  • 生成随机数

    两个C函数 rand()函数生成的随机数是伪随机数,所谓伪随机数,指的是程序每次运行,生成的随机数都是不变的,生成...

  • C++随机数用法大全

    引 程序中经常会需要用到随机数,所谓随机数,就是随机生成一个数字供程序使用。大部分语言都有随机数生成器的函数,比如...

  • 微信小程序安装npm后的注意点: node_modules和mi

    在微信小程序中执行sudo cnpm install 插件 --save安装包之后,会生成node_modules...

  • python随机数生成算法

    python随机数生成算法# 现在程序中用的随机数,都是伪随机数算法生成的。例如线性同余法,平方取中法等。 1.梅...

  • Maven clean 插件

    此插件用于删除在项目构建过程中生成的目录和文件。 clean 插件只有一个目标(goals):clean。(当然是...

  • 小程序插件需求文档

    一、AR插件鉴权 流程步骤: 1 开发者提供小程序的 appId, 后端定义规则生成 license 文件 2 ...

  • Python模块·String字符串

    一、String常用功能: 模块封装的字符串 二、案例:生成随机密码 需求: 编写一个能生成 8 位随机密码的程序...

网友评论

    本文标题:小程序插件—随机生成搭配的背景色和文本色

    本文链接:https://www.haomeiwen.com/subject/xaycfctx.html