要进行图片的旋转首先要知道的是:BufferedImage类------该类相当于一个容器.
AffineTransform类-----该类相当于变换方法.
首先定制一个适当大小的BufferedImage对象,这简单,构造器直接弄.然后构造一个空的AffineTransform对象.接着调用BufferedImage对象的setTransform()方法将AffineTransform关联起来.然后调用AffineTransform的相应rotate(),translate()等方法进行变换.最后调用BufferedImage对象的drawImage()方法将要变换的图像画进去即可!就这么简单几步!
ImageIcon ico = null;
AffineTransform trans = null;
trans = new AffineTransform();
trans.rotate(Math.PI, oringinal.getWidth(null) / 2, oringinal
.getHeight(null) / 2);
File f = new File("GUI/icons/greyscale_007.gif");
try {
Image image = ImageIO.read(f);
BufferedImage buffer1 = new BufferedImage(image.getWidth(null),
image.getHeight(null), BufferedImage.TYPE_INT_RGB);
Graphics2D g2 = buffer1.createGraphics();
g2.setTransform(trans);
g2.drawImage(image, null, null);
ico = new ImageIcon(buffer1);
} catch (Exception e) {
e.printStackTrace();
}