radius += Math.PI / 2;
try{
File f = new File(fpath+imagename);//根据路径和文件名创建文件对象;
Image image = ImageIO.read(f)
ImageIcon ico = null;
AffineTransform trans = null;
trans = new AffineTransform();
x = image.getWidth(null);
y = image.getHeight(null);
trans.rotate(radius,x/2 , y/2);
BufferedImage buffer1 = new BufferedImage(x,y,BufferedImage.TYPE_INT_RGB);
Graphics2D g2 = buffer1.createGraphics();
g2.setTransform(trans);
ico = new ImageIcon(buffer1);
g2.drawImage(image,null,null);
limage.setIcon(ico);//传入Label
}catch(Exception e) {
e.printStackTrace();
}
buffer1的宽高要根据旋转的角度定的,180度时宽高保持不变,90或270度时宽高要互调一下