【问题标题】:convert CSS filter brightness to PHP IMG_FILTER_BRIGHTNESS将 CSS 过滤器亮度转换为 PHP IMG_FILTER_BRIGHTNESS
【发布时间】:2017-05-25 11:52:43
【问题描述】:

我的页面上有一张图片,下方有一个 HTML 范围滑块。当我移动滑块时,jQuery 会改变图像的 CSS 过滤器亮度。

例如,我可以让 CSS 将亮度降低 10%、20%,将亮度加倍至 200% 等。效果很好。

我希望 **PHP **(GD) 使用 IMG_FILTER_BRIGHTNESS 应用亮度变化。问题是IMG_FILTER_BRIGHTNESS 没有使用百分比,它使用 0 表示 100%,255 表示纯白,-255 表示纯黑。

有谁知道如何将滑块上选择的值转换为 PHP 所需的相应值?

【问题讨论】:

    标签: php css filter gd


    【解决方案1】:

    假设范围像这样相关:

         | black | no change | white
    -----|-------+-----------+-------
     CSS |     0 |         1 |     2
    -----+-------+-----------+-------
     PHP |  -255 |         0 |   255
    

    你可以用PHP做一个简单的计算:

    $brightness = (255 - (255 * $css)) * -1;
    

    结果:

    • 如果$css == 1 (100%) 那么$brightness == 0
    • 如果$css == 0 (0%) 那么$brightness == -255
    • 如果$css == .5 (50%) 那么$brightness == -127.5
    • 如果$css == 1.2 (120%) 那么$brightness == 51

    【讨论】:

    • @Gdev 这回答了你的问题吗?
    • 很晚才知道,抱歉。是的,它确实回答了我的问题。非常感谢。
    • 迟到总比不到好!谢谢。
    猜你喜欢
    • 2016-08-10
    • 1970-01-01
    • 1970-01-01
    • 2020-09-10
    • 2011-05-16
    • 2013-03-23
    • 2023-04-07
    • 2013-01-09
    • 2021-01-22
    相关资源
    最近更新 更多