在Java中生成矩形边框的问题?

Yat*_*oel 6 java graphics java-2d

我正在使用java.awt.geom.Rectangle2D.Double类来生成一个矩形.我想生成一个填充颜色(比如绿色)并有边框(轮廓)的矩形.

现在问题是如果我打电话

g2.draw(new Rectangle2D.Double(....)); // g2 is an instance of Graphics2D
Run Code Online (Sandbox Code Playgroud)

然后它没有填充矩形,当我打电话

g2.fill(new Rectangle2D.Double(....)); // g2 is an instance of Graphics2D
Run Code Online (Sandbox Code Playgroud)

那么id不会生成边框.

Sam*_*erg 11

要执行此操作,请渲染矩形两次,首先是填充,然后是边框(绘制).

Rectangle2D rect = new Rectangle2D.Double(...);
g2.setColor(Color.white);
g2.fill(rect);
g2.setColor(Color.black);
g2.draw(rect);
Run Code Online (Sandbox Code Playgroud)


Dan*_*yer 5

这两个怎么样?首先绘制填充的矩形,然后在顶部绘制轮廓.