开发者

Problem in generating the border of a rectangle in Java?

I am using java.awt.geom.Rectangle2D.Double class to generate a rectangle. I want to generate a rectangle which is filled with a color (say green) and have a border (outline).

Now the problem is if I call

g2.draw(new Rectangle2D.Double(....)); // g2 is an instance of Graphics2D

then it doesn't fill the rectangle and when I call

g2.fill(new Rectangle2D.Double(....)); // g2 i开发者_运维技巧s an instance of Graphics2D

then id doesn't generate border.


To do this, render the rectangle twice, first the fill and then the border (draw).

Rectangle2D rect = new Rectangle2D.Double(...);
g2.setColor(Color.white);
g2.fill(rect);
g2.setColor(Color.black);
g2.draw(rect);


How about doing both? Draw the filled rectangle first and then draw the outline one over the top.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜