我没有看到如何仅将颜色从黑色变为白色。灰度。
我的例子。我的值从0到100。
他们的代表是这样的:
0 - 黑色
100 - 白色
我正在绘制JComponent,每当我需要改变颜色时,我必须调用
g.setColor(Color);
但如何告诉它只根据我的数字改变颜色从黑色到白色(数字越大,颜色越白)? 如何操纵RGB?
答案 0 :(得分:4)
Color API具有您可能更容易使用的HSB值。
您也可以使用HSL Colors。当您以黑色或白色开始时,请查看“亮度”选项卡。
答案 1 :(得分:3)
当然,除了逐渐变浅的灰色阴影之外,从黑色到白色本身没有颜色变化。
因此,只需使用相等的RGB值,将0 - 100视为255的百分比。
例如,50%是RGB的128,128,128(虽然取决于四舍五入,你可能会达到127,127,127)。
从百分比值到0-255的表达式为:
rgb=(pct*255)/100;
答案 2 :(得分:-1)
只要rgb中的值相等,就会有灰色。
所以
g.setColor(new Color(0, 0, 0);
是白色的。
g.setColor(new Color(255,255,255);
是黑色
g.setColor(new Color(128,128,128);
是白色和黑色的平等混合。