我可以旋转已添加到JLabel的图像。唯一的问题是,如果高度和宽度不相等,旋转的图像将不再出现在JLabel的原点(0,0)处。如何使用Java/Swing旋转图像,然后将其原点设置为0,0?
这是我正在做的。我也尝试使用AffineTransform并旋转图像本身,但结果相同。
Graphics2D g2d = (Graphics2D)g;
g2d.rotate(Math.toRadians(90), image.getWidth()/2, image.getHeight()/2);
super.paintComponent(g2d);
如果我有一个图像,其宽度大于其高度,用这个方法旋转的图像,然后画它会导致在图像中垂直地画的点0,0的上方,且水平向右点0,0。
奇妙的代码!感谢您成为唯一一家严格回应图片旋转的答案,而不是将其锁定到Graphics2D。 – AnthonyW 2014-12-03 13:44:29