我目前正在研究颜色操作/选择等,并且遇到了以下代码。我想知道有人可以告诉我下面的代码是做什么的,并为我分解,谢谢!
$newVal = round(round(($rgb['red'] / 0x33)) * 0x33);
具体是什么是0x33
感谢adavnce
答案 0 :(得分:3)
似乎是将$rgb['red']
转换为最接近的0x33倍数。
它可能正在这样做,所以颜色将最终出现在所谓的“网页安全”调色板上,如果我没记错的话,它由rgb值为0x33的倍数的颜色组成。
0x33是51(十进制)的base-16(十六进制)表示。
答案 1 :(得分:1)
0x33为51,因此它将单个字节的0-255值缩放为0-5,然后将其缩小。这导致该值被置于51的最高倍数,低于该值。
答案 2 :(得分:0)
0x33只是33的十六进制值。
我不确定发生了什么,但我的猜测是计算任何颜色的网页安全十六进制。或者沿着这些方向发展。
答案 3 :(得分:0)
正如@Seth所指出的那样,它将颜色四舍五入到最接近的“网页安全”颜色。这是一个古老的想法,可以追溯到大多数彩色显示器都是8位的时候。其中一个受欢迎的人是Visibone,因为他们的'网络安全色图'是他们的第一个产品。
有关详细信息,请参阅Web Colours。