【问题标题】:How can i know if a hex color is blue?我怎么知道十六进制颜色是否为蓝色?
【发布时间】:2018-12-31 23:47:42
【问题描述】:

我想知道一个十六进制代码颜色是否在蓝色范围内。

我正在使用 Ghero Dominant 颜色来获取它,但我需要知道这种颜色是否像蓝色。

$color = DominantColor::setColor($sourceimage)->getColor();

有人知道一些函数或有任何带有十六进制蓝色的数组吗?

【问题讨论】:

  • 查看库的文档不是更好吗?
  • 你可以用this然后检查蓝色的量并与R和G进行比较吗?
  • 谢谢 Script47,我试图用 rgb 来寻找蓝色的数量,但是蓝色类型很多,而不是软 b 和高/中 r 和 g,我不知道如何正确控制它

标签: php colors hex


【解决方案1】:

如果有人想要,我只是做一个函数(80% 的可能性知道 rgb 颜色是否在蓝色范围内)。问候

public function is_blue($rgb)
{
    extract($rgb);
    $result = false;

    if(($r<240)&&($g<240)&&($b==255)){ $result = true;}
    if(($r<200)&&($g<200)&&($b>230)){ $result = true;}
    if(($r<175)&&($g<175)&&($b>220)){ $result = true; }
    if(($r<150)&&($g<150)&&($b>200)){ $result = true; }
    if(($r<125)&&($g<125)&&($b>180)){ $result = true; }
    if(($r<100)&&($g<100)&&($b>170)){ $result = true; }
    if(($r<80)&&($g<80)&&($b>150)){ $result = true; }
    if(($r<60)&&($g<60)&&($b>120)){ $result = true; }
    if(($r<40)&&($g<40)&&($b>100)){ $result = true; }
    if(($r<20)&&($g<20)&&($b>80)){ $result = true; }
    if(($r<10)&&($g<10)&&($b>50)){ $result = true; }
    if(($r<10)&&($g<180)&&($b>200)){ $result = true; }
    if(($r<10)&&($g<150)&&($b>180)){ $result = true; }
    if(($r<10)&&($g<120)&&($b>150)){ $result = true; }
    if(($r<10)&&($g<100)&&($b>130)){ $result = true; }
    if(($r<10)&&($g<50)&&($b>100)){ $result = true; }
    if(($r<10)&&($g<25)&&($b>80)){ $result = true; }
    if(($r<80)&&($g<10)&&($b>240)){ $result = true; }
    if(($r<60)&&($g<10)&&($b>220)){ $result = true; }
    if(($r<40)&&($g<10)&&($b>200)){ $result = true; }
    if(($r<20)&&($g<10)&&($b>150)){ $result = true; }
    if(($r==0)&&($g<10)&&($b>50)){ $result = true; }
    if(($r<125)&&($g<220)&&($b>200)){ $result = true; }
    if(($r<125)&&($g<200)&&($b>220)){ $result = true; }
    if(($r<125)&&($g<180)&&($b>180)){ $result = true; }
    if(($r<230)&&($g>230)&&($b>240)){ $result = true; }
    if(($r<60)&&($g>140)&&($b>160)){ $result = true; }
    if(($r<10)&&($g>180)&&($b>200)){ $result = true; }
    if(($r<10)&&($g>160)&&($b>180)){ $result = true; }
    if(($r<10)&&($g>120)&&($b>160)){ $result = true; }
    if(($r<80)&&($g>160)&&($b>180)){ $result = true; }
    if(($r<80)&&($b>$g)){ $result = true; }
    if(($r<200)&&($g<200)&&($b>180)){ $result = true; }

    $percent = $r-$g/$g*100;
    if((($percent > -20) or ($percent<20)) and ($b > 200)){$result = true; }

    return $result;
} 

【讨论】:

    猜你喜欢
    • 2021-01-16
    • 2019-10-29
    • 2011-09-18
    • 2019-06-16
    • 2021-03-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多