将照度转换为十六进制颜色

时间:2013-04-26 19:23:56

标签: javascript css

我有很大的问题。从数据库我可以得到从0到100的照度。其中0 - 夜晚,100 - 中午。了解这些参数我需要建立日梯度。

数据结构看起来如此:

{
0: '0%',
10: '25%',
30: '100%',
40: '60%',
50: '100%',
90: '0%'
}

从点到点渐变瓷砖,它可能会影响购买位置的变化。它从30 - 50说明。

我根本没有想法。有什么建议吗?

2 个答案:

答案 0 :(得分:2)

我认为您需要的是将hsl转换为rgb的功能。考虑照明为l(亮度)。你需要一个色调和饱和度,但它非常简单。这个问题有多个javascript hsl到rgb解决方案:

HSL to RGB color conversion

答案 1 :(得分:0)

您的数据结构有两个NOON! (100%)

{
0: '0%',
10: '20%',
30: '60%',
40: '80%',
50: '100%',
99: '1%'
}

这可能不是你想要的,但它可能更接近。

更新

好的,谢谢,我确实看到你在你的问题中指出了这一点,但它让我不知所措。

无论如何,得到了这个链接 http://ie.microsoft.com/testdrive/Graphics/hands-on-css3/hands-on_gradients.htm

您的 HANDS ON GRADIENTS 。 目前有一个空间,其中渐变出现在屏幕的左侧,这是因为尚未应用设置。 所以我们将通过以下方式纠正这个问题:

LINEAR 标签下的设置中,您会看到 DIRECTION 以及方向值的滑块。

点击 DIRECTION 滑块的加号按钮,直到值为 BOTTOM

所以现在你看到从上到下从黑到白的淡入淡出。 这表示您的日常规模。

现在,当用户前往不同的时区时,它可以在渐变中显示为STEP。

要向您展示它的外观,请点击添加颜色步骤按钮。

现在添加了一个步骤,你有 START_AT STOP_AT END_AT 设置如下: START_AT 黑色 STOP_AT 白色 END_AT 黑色

现在你有两个从黑到白的渐变1,另一个从白到黑。 将鼠标光标放在标有X%的 STOP_AT 滑块内的黑色方块上(其中X是当前百分比),当您用鼠标拖动滑块时,您可以看到两个渐变的变化。 / p>

希望这会让您走向解决目标的方向。 顺便提一下,如果渐变之间的COMMON颜色不一样,那么你将不得不添加另一个 COLOR_STEP (虽然我希望在大多数情况下共同颜色是相同的,唯一的例外是时区变化的地方。

是否值得指出?我注意到这些值是以RGB形式输入的,所以你需要一个函数来将你的100%改为RGB(255,255,255)和0%改为RGB(0,0,0),其中黑色RGB(0.0.0)是午夜/夜晚白色RGB(255,255,255)是日/中午。

相关问题