4

当您使用Graphics2D.scale();和绘制形状时,轮廓粗细也会被缩放。

有没有办法在不缩放线条粗细的情况下绘制它?除了使用上述函数之外,也许还有另一种有效的方法来扩展它?

4

3 回答 3

1

这个问题类似。看起来您必须使用 Stroke 对象来设置正确的线宽。

于 2012-07-31T18:44:34.407 回答
0

您将不得不将绘图保存为线向量列表,并以各种尺寸缩放和渲染绘图以保持所需的线条粗细。

于 2012-07-31T18:46:24.027 回答
0

我刚刚找到了解决我自己问题的方法。我不知道它的效率如何,但它按预期工作:

Area area = new Area(myShape); //myShape is the shape I want to scale
AffineTransform at = new AffineTransform();
at.scale(2,2);
area = area.createTransformedArea(at);
graphics2d.draw(area); //graphics2d is the Graphics2D instance to do the drawing

也许有人可以告诉我这是否是一个好方法?

于 2012-07-31T18:52:37.077 回答