Java Graphics2D Rotate 中的图像质量遭到破坏

2023-12-06

我在使用 Graphics2D 旋转方法旋转图像时遇到问题。

这是我遇到的问题的图片:

enter image description here

当我移动球时,图像在旋转时完全扭曲。

这是我的旋转方法:

public static void rotate(BufferedImage img, Rectangle rect, int degrees) { 
    Graphics2D g = (Graphics2D) img.createGraphics();
    g.rotate(degrees, rect.x + rect.width/2, rect.y + rect.height/2);
    g.drawImage(img, rect.x, rect.y, rect.width, rect.height, null);
    g.dispose();
}

我能做些什么来避免质量损失吗?


那么目前当球移动时,您将图像旋转几度并用新图像覆盖原始图像?每次旋转图像时,都会添加一点点失真;经过多次旋转,扭曲会加剧。

相反,只需将原始图像保留在内存中,并存储它在屏幕上看起来应该旋转的度数。然后每次渲染时,将原始图像旋转当前的度数。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Java Graphics2D Rotate 中的图像质量遭到破坏 的相关文章

随机推荐