如何在半透明度/透明度的applet中绘制填充矩形?
答案 0 :(得分:8)
烨。
void foo(Graphics g) {
g.setColor(new Color(.3f, .4f, .5f, .6f);
g.fillRect(50, 50, 100, 100);
}
答案 1 :(得分:3)
您使用的是什么API? 如果使用Java2D中的Graphics,则在创建Color对象时,可以将它们的透明度添加为0到1之间的alpha。
答案 2 :(得分:0)
Paul Murray的答案是完全正确的。但要澄清的是,4色开关的混合和匹配是产生不同颜色的原因。以下是一些帮助您入门的基础知识。
g.setColor(new Color(1f, 0f, 0f, 1f)); //RED
g.setColor(new Color(0f, 1f, 0f, 1f)); //GREEN
g.setColor(new Color(0f, 0f, 1f, 1f)); //BLUE
g.setColor(new Color(0f, 0f, 0f, 1f)); //BLACK
g.setColor(new Color(1f, 1f, 1f, 1f)); //WHITE
如果使用十进制数字,则可以使颜色不透明。这样:
g.setColor(new Color(.5f, 0f, 0f, .5f)); //RED
将是50%不透明和红色。那么你可以用那种不透明的颜色画出任何东西。如:
g.fillRect(50, 50, 100, 100);
保罗说: