我有一个绘制Image
骰子的JPanel(java.awt.Image)。我想旋转这个图像,但无论何时旋转它的边缘都会变成像素化:
Rotated and not rotated images.像素化比这些图像显示更加明显。
以下是paintComponent
方法:
public void paintComponent(Graphics g) {
Graphics2D dicePainter = (Graphics2D) g;
dicePainter.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON);
int width = getWidth() / 2;
int height = getHeight() / 2;
dicePainter.rotate(-Math.PI / 3, width, height);
super.paintComponent(g);
dicePainter.drawImage(diceImage, 30, 15, ViewConstants.DICE_IMAGE_WIDTH, ViewConstants.DICE_IMAGE_WIDTH, this);
}
在图像旋转时,是否有改善渲染的方法?我认为这实际上是由于我的屏幕分辨率,而不是Java图像渲染,因为地图中更倾斜的线条也比其他线条更像素化。