美文网首页
Color RGB颜色深浅的排序

Color RGB颜色深浅的排序

作者: 我吃大西瓜QAQ | 来源:发表于2018-01-09 11:05 被阅读0次

最近由于项目需要,需要对后台传递过来的十六进制的RGB,按照颜色由浅至深进行排序.
参考此链接RGB排序,通过将RGB 模式转换成YUK模式,而 Y 是明亮度(灰阶),因此只需要获得 Y 的值而判断他是否足够亮就可以了,当和大于等于此值就为浅色

$grayLevel = $R * 0.299 + $G * 0.587 + $B * 0.114;
if ($grayLevel >= 192) {
    // add shadow
}

因此,通过对结果进行排序,可以得到我们需要的颜色深浅值,由于服务器返回的结果是十六进制的颜色值,类似#3f45f8这种,所以需要先转换成十进制.

...
String color = "#3f45f8";
String red = color .replaceAll("#", "").substring(0, 2);
String green = color .replaceAll("#", "").substring(2, 4);
String blue = color .replaceAll("#", "").substring(4);
int r = Integer.parseInt(red , 16);
int g = Integer.parseInt(green , 16);
int b = Integer.parseInt(blue , 16);
int grayLevel = (int) (r * 0.299 + g * 0.587 + b * 0.114);

最后可以将得到的结果存入List或者是Map中排序,得到自己需要的结果~

相关文章

  • Color RGB颜色深浅的排序

    最近由于项目需要,需要对后台传递过来的十六进制的RGB,按照颜色由浅至深进行排序.参考此链接RGB排序,通过将RG...

  • CSS(层叠样式表)之外观属性

    color文本颜色 预定颜色值十六进制,常用****RGB代码 color:rgb(0,0,0);透明效果:col...

  • CSS权威指南读书笔记-值和单位

    颜色 用RGB指定颜色rgb(color)color是一个百分数或者整数的三元组表示 rgb(100%,100%,...

  • CSS字体样式属性

    1 color 字体颜色 定义元素内文字颜色。 语法: color:颜色名十六进制RGB color属性用于定义文...

  • 值和单位

    用RGB指定颜色 计算机通过组合不同的红色,绿色,蓝色分量来创造颜色,称为RGB颜色 语法:rgb(color):...

  • 学习笔记(文字段落)

    文字段落样式属性 color:文字颜色(color:red; color:#fofcf8; color:rgb...

  • source insight护眼背景设置

    1添加颜色 option->perference->Color & Fonts -> Pick Color RGB...

  • RGB与YUV

    RGB与YUV RGB色彩空间 RGB是以颜色发光的原理设计:三原色光模式(RGB color model),又称...

  • CSS text-文本属性

    一、文本颜色 color 预定义的颜色值,如red、green 十六进制,如#FF0000 RGB代码,rgb(...

  • ios xib跟代码设置颜色偏差

    在通过xib设置控件颜色时,RGB Sliders的Color Profile默认是Generic RGB形式的,...

网友评论

      本文标题:Color RGB颜色深浅的排序

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