java实现旋转图像(附完整源码)
时间: 2023-11-11 14:04:17 浏览: 83
以下是Java实现旋转图像的完整源码:
```java
import java.awt.Graphics2D;
import java.awt.RenderingHints;
import java.awt.image.BufferedImage;
public class ImageRotate {
public static BufferedImage rotate(BufferedImage image, double angle) {
int width = image.getWidth();
int height = image.getHeight();
BufferedImage rotated = new BufferedImage(width, height, image.getType());
Graphics2D g2d = rotated.createGraphics();
g2d.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON);
g2d.rotate(Math.toRadians(angle), width / 2, height / 2);
g2d.drawImage(image, 0, 0, null);
g2d.dispose();
return rotated;
}
}
```
使用方法:
```java
BufferedImage image = ImageIO.read(new File("path/to/image.png"));
BufferedImage rotated = ImageRotate.rotate(image, 45);
ImageIO.write(rotated, "png", new File("path/to/rotated-image.png"));
```
其中,`rotate`方法接收两个参数,一个是待旋转的图片,另一个是旋转角度,返回旋转后的图片。该方法使用`Graphics2D`对象进行图像旋转操作,其中`setRenderingHint`方法用于设置抗锯齿效果,`rotate`方法用于设置旋转角度和旋转中心点,`drawImage`方法用于绘制旋转后的图片,`dispose`方法用于释放`Graphics2D`对象。
阅读全文