• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 877
  • Last Modified:

Crop jpg image

Hi All,

Can anyone tell me how to crop a jpeg image. please also write the main method on how to call the methods.

Thanks
0
menakaindrani
Asked:
menakaindrani
1 Solution
 
CEHJCommented:
BufferedImage bi = ImageIO.read(new FileInputStream("x.jpg"));
BufferedImage cropped = bi.getSubImage(5, 5, bi.getWidth() - 10, bi.getHeight() - 10);
ImageIO.write(cropped, "jpeg", new File("cropped.jpg");
0
 
CEHJCommented:
(crops by 5px all round)
0
Independent Software Vendors: We Want Your Opinion

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

 
CEHJCommented:
>>ImageIO.write(cropped, "jpeg", new File("cropped.jpg");

should have been

ImageIO.write(cropped, "jpeg", new File("cropped.jpg"));
0
 
menakaindraniAuthor Commented:
well I am new to this so I am not sure how to get output in main method

public Image cropImage(Image img,int x, int y, int width, int height){

    Image image = createImage(new FilteredImageSource(image.getSource(), new CropImageFilter(x, y, width, height)));
    return image;
}


what should be the main method for this??? how do I see the cropped jpg image???  and how do i pass in jpg image
0
 
CEHJCommented:
Make the above method static then:

public static void main(String[] args) {
      BufferedImage bi = ImageIO.read(new FileInputStream("x.jpg"));
      // or use parameter
      //BufferedImage bi = ImageIO.read(new FileInputStream(args[0]));
      Image i = cropImage(bi, 5, 5, bi.getWidth() - 10, bi.getHeight() - 10);
}
0
 
CEHJCommented:
Display:

      JFrame f = new JFrame();
      f.getContentPane().add(new JLabel(new ImageIcon(i)));
      f.pack();
      f.setVisible(true);
0

Featured Post

Industry Leaders: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

Tackle projects and never again get stuck behind a technical roadblock.
Join Now