import java.awt.*;
import java.awt.image.*;
import java.io.*;
import javax.imageio.*;

public class ImageClip {

	public static void main(String[] args) throws Exception {
		if (args.length != 6) {
			System.out.println("Usage: ImageClip FILENAME X Y W H OUTFILENAME");
			System.exit(1);
		}
		String filename = args[0];
		int x = Integer.parseInt(args[1]);
		int y = Integer.parseInt(args[2]);
		int w = Integer.parseInt(args[3]);
		int h = Integer.parseInt(args[4]);
		String outfilename = args[5];

		BufferedImage img = ImageIO.read(new File(filename));

		BufferedImage outimg = new BufferedImage(w, h, BufferedImage.TYPE_INT_ARGB);
		Graphics g = outimg.createGraphics();
		g.drawImage(img, -x, -y, null);
		g.dispose();

		ImageIO.write(outimg, "png", new File(outfilename));
	}

}

