2、获得到格式如下: rgb(225, 22, 23)然后进行拆分的方法代码。
3、把 (225,22,23)字符串进行拆分的方法代码。
4、最后的组合的方法代码。
5、获得十六进制颜色js方法代码。
6、获得十六进制颜色css样式代码。
/**
* HSL颜色值转换为RGB.
* 换算公式改编自 http://en.wikipedia.org/wiki/HSL_color_space.
* h, s, 和 l 设定在 [0, 1] 之间
* 返回的 r, g, 和 b 在 [0, 255]之间
*
* @param Number h 色相
* @param Number s 饱和度
* @param Number l 亮度
* @return Array RGB色值数值
*/
function hslToRgb(h, s, l){
var r, g, b
if(s == 0){
r = g = b = l// achromatic
}else{
var hue2rgb = function hue2rgb(p, q, t){
if(t <0) t += 1
if(t >1) t -= 1
if(t <1/6) return p + (q - p) * 6 * t
if(t <1/2) return q
if(t <2/3) return p + (q - p) * (2/3 - t) * 6
return p
}
var q = l <0.5 ? l * (1 + s) : l + s - l * s
var p = 2 * l - q
r = hue2rgb(p, q, h + 1/3)
g = hue2rgb(p, q, h)
b = hue2rgb(p, q, h - 1/3)
}
return [Math.round(r * 255), Math.round(g * 255), Math.round(b * 255)]
}
/**
* RGB 颜色值转换为 HSL.
* 转换公式参考自 http://en.wikipedia.org/wiki/HSL_color_space.
* r, g, 和 b 需要在 [0, 255] 范围内
* 返回的 h, s, 和 l 在 [0, 1] 之间
*
* @param Number r 红色色值
* @param Number g 绿色色值
* @param Number b 蓝色色值
* @return Array HSL各值数组
*/
function rgbToHsl(r, g, b){
r /= 255, g /= 255, b /= 255
var max = Math.max(r, g, b), min = Math.min(r, g, b)
var h, s, l = (max + min) / 2
if(max == min){
h = s = 0// achromatic
}else{
var d = max - min
s = l >0.5 ? d / (2 - max - min) : d / (max + min)
switch(max){
case r: h = (g - b) / d + (g <b ? 6 : 0)break
case g: h = (b - r) / d + 2break
case b: h = (r - g) / d + 4break
}
h /= 6
}
return [Math.floor(h*100), Math.round(s*100), Math.round(l*100)]
}
原文:https://blog.csdn.net/qq_35321405/article/details/79786977
rgb在js中意思是三原色色彩模式。根据查询相关公开信息显示:RGB色彩模式是工业界的一种颜色标准,是通过对红(R)、绿(G)、蓝(B)三个颜色通道的变化以及它们相互之间的叠加来得到各式各样的颜色的,RGB即是代表红、绿、蓝三个通道的颜色,这个标准几乎包括了人类视力所能感知的所有颜色,是运用最广的颜色系统之一。欢迎分享,转载请注明来源:内存溢出
评论列表(0条)