Web安全的颜色生成器或算法

时间:2011-10-04 15:57:32

标签: javascript algorithm web-safe-colors

有没有人遇到网络安全的颜色算法?也许解释为什么我需要一个; palete将用于JavaScript图表解决方案。这就是为什么生成的颜色需要彼此足够清晰的原因。我知道只有216种网页安全颜色,我可以手动对它们进行排序,但我只想提供扩展范围的可能性,如果需要的话。因此需要一种算法。

定义可以在http://en.wikipedia.org/wiki/Web_colors

找到

即使很少有人仍然使用8位显示器,网络安全色也是最常见的在不同设备上再现的颜色,并且最容易看到。

我很感激任何与项目或图书馆有关的链接。

更新:

以防我不够清楚。目前我的代码有一个已定义的颜色数组。这是最简单的解决方案。一个更复杂但更灵活的解决方案是:

步骤1:计算所需的不同颜色的数量 第2步:计算颜色,以便选择当前范围中最明显的颜色: - 四种颜色示例:结果:[蓝色,灰色,红色,绿色] - 50种颜色的示例:[蓝色,灰色,红色,绿色,黄色,紫色,橙色,青色,蓝色2,灰色2,红色2,绿色2,......]

所以我的想法是:创建每种色调的堆栈。因此,堆叠一个将包含蓝色阴影,堆栈2将包含灰色阴影,堆叠3个红色阴影等等。每个阴影都是“网页安全”颜色。阴影也是根据我们总共需要多少颜色除以堆栈数来计算的。然后我可以从堆栈中收集颜色,以便: - 从每个堆栈的顶部取一种颜色 - 从每个堆栈的底部取一种颜色 - 从每个堆栈的顶部取一种颜色 - 等等

这样我们就可以实现以下目标: - 挑选的颜色最可能彼此不同 - 通过排列堆栈,颜色“很好地”坐在另一个旁边 - 两种相邻颜色之间的区别是最好的,同时在视觉上不会令人不安。 - 这可以产生多少种不同的颜色是有限的,因为它们不再足够清晰。那时我们重新开始。

我希望这能够解释这个问题以及我为什么要计算这些问题。

另外:我不是网页设计师。

2 个答案:

答案 0 :(得分:3)

为什么不在应用的配置文件中定义它们?将来很容易扩展。

答案 1 :(得分:2)

for (r = 0; r < 16; r += 3) {
            for (g = 0; g < 16; g += 3) {
                for (b = 0; b < 16; b += 3) {
                    alert(r.toString(16) + g.toString(16) + b.toString(16));
                }
            }
        }

编辑:这是展示它们的好方法:http://jsfiddle.net/MML6P/4/