我画了一个带有拼写笔划的圆角矩形然后我尝试画一条线 在这个矩形周围。但在边缘,它永远不会真正相互匹配。
g.setStroke(new BasicStroke(radius + .5f));
g.drawRoundRect(x + radius/2, y + radius/2, width - radius, height - radius, radius, radius);
// Outer border
g.setColor(outer);
g.setStroke(new BasicStroke(1));
g.drawRoundRect(x, y, width - 1, height - 1, radius, radius);
你知道如何计算外边界半径吗?
好的我尝试了一点,但我得到了一个更好的,但仍然没有完成;
float scale = radius / 2.0f;
g.setPaint( p );
g.setStroke(new BasicStroke(2 * scale ));
g.drawRoundRect(x + radius/2, y + radius/2, width - radius, height - radius, radius, radius);
// Outer border
g.setColor(outer);
g.setStroke(new BasicStroke(1));
g.drawRoundRect(x, y, width - 1, height - 1, Math.round(4*scale), Math.round(4*scale) );
有人有更好的吗?
答案 0 :(得分:0)
我认为没有一种简单的方法。 (即使你实现了自己的圆角矩形绘图程序也没有。)
我建议你首先绘制一个略厚的外边框,然后画上内部的“边框”。