对16进制的色彩 (HEX格局),根底模式是"#1BFFCD"这种模式(6位16进制数字) - 其R G B重量别离用2位十六进制数字示意(rr gg bb)
HEX格局的色彩也能够设置透明度,在根底的6位16进制数字之后加上2位十六进制数字示意透明度
如"#1BFFCDFF" -> 不透明度最高,其色调体现等同于 "#1BFFCD"
"#1BFFCD11" -> 不透明度很低,根本等同于背景色
"#1BFFCD00" -> 不透明度最低,等同于背景色
晓得了这些,就能够对HEX格局的color进行不透明度变换了
间接贴代码
详解:
1、指标输入格局是对立大写的HEX color,如 "#AABBCCEF"。
不想要"#aabbccef",更要防止 "#AABBCCef"这种大小写混合的状况。
因而在代码中对用户输出的hex color及转化后的透明度都进行了toUpperCase解决。
2、此外还有一个须要留神的点在于
当传入的参数percent比拟小,如0.01 或 0.05。
对应的间接计算出的opacity别离是 0.01 -> "2" 0.05 -> "C"
如果不对opacity进行解决,则会产生
"#AABBCC2"
"#AABBCCC"
这样的7位HEX color 这种color是违规的,会造成不可预期的后果。
因而判断opacity的length,如果length小于2则补零,将opacity变成2位。
完结。
同步更新到本人的语雀
https://www.yuque.com/dirackeeko/blog/vto22bxk1b4p6cte