[英]Java swing. How to change color intensity from black to white?
我看不到如何仅将颜色从黑色更改为白色。 灰度。
我的例子。 我的值从0到100。
他们的表示是这样的:
0-黑色
100-白色
我正在绘制JComponent,每当需要更改颜色时,都必须调用
g.setColor(Color);
但是如何告诉它仅根据我的数字将颜色从黑色更改为白色(数字越大,颜色越白)? 如何操纵RGB?
Color API具有HSB值,您可能会发现它更易于使用。
您还可以使用HSL颜色 。 从黑色或白色开始,请查看“亮度”选项卡。
当然,除了逐渐变浅的灰色阴影外,从黑色到白色没有任何颜色变化。
因此,只需使用相等的RGB值,将0-100视为255的百分比。
例如,50%是128,128,128的RGB(尽管取决于舍入,您可能会得出127,127,127)。
从百分比值到0-255的表达式为:
rgb=(pct*255)/100;
只要rgb中的值相等,您就会显示为灰色。
所以
g.setColor(new Color(0, 0, 0);
是白色的。
g.setColor(new Color(255,255,255);
是黑色的
g.setColor(new Color(128,128,128);
是白色和黑色的均等混合。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.