【问题标题】:PHP Color ManipulationPHP 颜色处理
【发布时间】:2011-02-07 05:59:45
【问题描述】:

我目前正在研究颜色操作/选择等,并遇到了以下代码。我想知道有人可以告诉我以下代码在做什么,并为我分解它,谢谢!

$newVal = round(round(($rgb['red'] / 0x33)) * 0x33);

特别是什么是 0x33

谢谢您

【问题讨论】:

    标签: php colors gdlib


    【解决方案1】:

    正如@Seth 所指出的,它将颜色四舍五入到最接近的“网络安全”颜色。这是一个古老的想法,可以追溯到大多数彩色显示器都是 8 位的时候。 Visibone 是使其流行的人之一,因为他们的“网络安全颜色图表”是他们的第一个产品。

    更多信息请参见Web Colours

    【讨论】:

      【解决方案2】:

      0x33 是 51,因此它将单个字节的 0-255 值缩放为 0-5,然后将其缩小。这导致该值被限制为低于该值的 51 的最高倍数。

      【讨论】:

        【解决方案3】:

        它似乎正在将$rgb['red'] 转换为最接近的 0x33 倍数。

        可能是这样做的,所以颜色最终会出现在所谓的“网络安全”调色板中,它(如果我没记错的话)由 rgb 值是 0x33 倍数的颜色组成。

        0x33 是 51(十进制)的 base-16(十六进制)表示。

        【讨论】:

          【解决方案4】:

          0x33 只是 33 的十六进制值。

          我不太确定发生了什么,但我猜它会计算任何颜色的网络安全十六进制。或者类似的东西。

          【讨论】:

            猜你喜欢
            • 2013-02-22
            • 2012-11-02
            • 1970-01-01
            • 2011-04-12
            • 1970-01-01
            • 1970-01-01
            • 2014-05-12
            • 1970-01-01
            • 1970-01-01
            相关资源
            最近更新 更多