您好,我正在尝试创建一个循环文本。我设法通过循环每个旋转的字符来以某种方式做到这一点。但我还是不明白。我不明白的角度。有人可以给我一个很好的解释吗?就像下面的代码一样,为什么 a 不完全是 90 度?但介于 100 到 120 之间?
Graphics2D g2d = (Graphics2D)g;
AffineTransform xform1, cxform;
xform1 = AffineTransform.getTranslateInstance(200,200);
g2d.setTransform(xform1);
g2d.drawLine(0, -20, 0, 20);
g2d.drawLine(-20, 0, 20, 0);
xform1.rotate(Math.toDegrees(90));
g2d.setTransform(xform1);
g2d.drawString("a", 0, 20);
我的第一篇文章。希望我没有犯任何错误。 谢谢
最佳答案
您想旋转 90 度,但是 rotate
需要弧度 - 所以你的转换是错误的。您将 90 弧度转换为度数,然后将其传递给需要弧度的值 :) 试试这个:
xform1.rotate(Math.toRadians(90));
关于java - 为什么 g2d.rotate 到 90 度不完全是 90 度? JAVA,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6087629/