public static void main(String[] args) throws Exception {   
InputStream fis = new FileInputStream("C:\\要裁剪的图.jpg");
ImageReader reader = (ImageReader) ImageIO.getImageReadersByFormatName("jpg").next();
ImageInputStream iis = ImageIO.createImageInputStream(fis);//创建图片输入流
reader.setInput(iis, true);//把图片流放到ImageReader中,ImageReader解析和解码图像时要用到这个流
ImageReadParam param = reader.getDefaultReadParam();
//定义一个矩形 Rectangle(a, b, c, d),其中a,b为左上角起点坐标,cd宽度和高度
Rectangle rect = new Rectangle(480, 230, 300, 300);
param.setSourceRegion(rect);//提供一个 BufferedImage,将其用作解码像素数据的目标。
BufferedImage bi = reader.read(0, param);
ImageIO.write(bi, "jpg", new File("C:\\裁剪下来的图.jpg"));//保存新图片
fis.close();
iis.close();
}