最近几天在做一个项目,因为涉及到了图片(绝大部分都不是整图,是把一张张的大图切成小图,也就是Title)的翻转以及90°旋转,弄得焦头烂额。在网上搜索好几天,发现用到的方法都是比较公式化的,对于只是在绘图的时候需要显示翻转而不需要另外生成图片的情况,这些代码用起来非常的麻烦。最后仔细的研究了一下JDK文档,用Graphics2D很简单的就实现了以下功能:
1、图片的翻转,包括水平翻转以及垂直翻转
2、图片的任意角度旋转。因为工程需要,代码里面都直接写成了+90,根据需要,可以对这个值进行改动,以符合需求。
3、可以使用组合操作,比如水平翻转+旋转,或者垂直+水平+旋转,任意。
以下是代码:package Demo628;import java.awt.*;import java.awt.event.*;import java.util.*;import javax.swing.*;public class ImageRote{ public static void main(String[] args) { JFrame frame = new TransformFrame(); frame.setVisible(true); }}class TransformFrame extends JFrame implements ActionListener{ //添加几个按钮方便操作。 JButton rote = new JButton("旋转") ; JButton flipX= new JButton("水平翻转"); JButton flipY= new JButton("垂直翻转"); JButton