Css-计算灰色
如何将Css-计算灰色,css,math,Css,Math,如何将#000000-#ffffff区间介绍x等分,得到x个灰色?这可能吗 编辑: 更具体地说: 我希望将#000000-#ffffff颜色范围“分割”如下: step = 256 / (x + 2) #000000 #1E1E1E #282828 #515151 #5b #848484 #8E8E8E #B7B7 #C1C1C1 #eaea #F4 #FFFFFF 在这个列表中有12种颜色。(查看sgi灰色。) 但是如果我想要的不是12种而是32种颜色呢?如何计算它们? 我希望你现在能理解我
#000000
-#ffffff
区间介绍x等分,得到x个灰色?这可能吗
编辑:
更具体地说:
我希望将#000000
-#ffffff
颜色范围“分割”如下:
step = 256 / (x + 2)
我希望你现在能理解我:)实际上你只需要把255(DEC)除以x。然后,将这些数字传递给十六进制数字,让我们调用其中一个数字0xC4。最后,您只需执行以下操作:
.whatever { background-color: #C4C4C4; }
这就是为什么。\000000实际上是R=00,G=00,B=00的RGB
当R=G=B时得到灰色
#00-#FF留给您256种可能的组合,因此如果您想排除白色和黑色(#000000和#FFFFFF),请尝试以下方法:
step = 256 / (x + 2)
所以如果你想得到4个灰度,步骤解析为
step = 256 / (4+2) = 256 / 6 = 43
将其从十进制转换为十六进制:
step_16 = 43_16 = #2B
现在的颜色是:
#2B2B2B
#565656
#818181
...
是的,这是可能的,只要将255除以
x
,就可以得到步骤
Ruby中的生成器:
def gray_generator(steps)
step = 255/steps
ret = []
steps.times { |i| ret << (step*i).to_s(16) * 3 }
return ret
end
def灰度发生器(步骤)
步长=255/步
ret=[]
steps.times{| i | ret只要这三个值(RGB)相等,它们都是灰色的如果需要在#000000(黑色)到#ffffff(白色)范围内的X灰度,则需要除以255/(X-1),并将结果用作Reg、绿色和蓝色的步长值。在java中执行此操作:
int x = 12;
for (int i = 0; i < x; i++) {
int c = (int) Math.round(i*255.0/(x-1));
System.out.printf("%d. #%02x%02x%02x\n", i, c, c, c);
}
我不太清楚你的意思,听起来很有趣,但是:)你到底想要什么?