2

I am trying to scale an image in byte[] form in java but my scaled variable returns null when I set scale parameters and get exception

public static byte[] resizeImage(byte[] image) throws IOException {

    ByteArrayInputStream bais = new ByteArrayInputStream(image);
    Image tmpImage = ImageIO.read(bais);
    ImageIcon imageIcon = new ImageIcon(tmpImage);
    Image scaled = imageIcon.getImage().getScaledInstance(100, 100, Image.SCALE_SMOOTH);
    BufferedImage buffered = ((ToolkitImage) scaled).getBufferedImage();
    ByteArrayOutputStream baos = new ByteArrayOutputStream();
    ImageIO.write(buffered, "jpeg", baos);
    baos.flush();
    image = baos.toByteArray();
    baos.close();
    return image;
}

1 Answers1

0

Use BufferedImage buffered = ImageIO.read(new ByteArrayInputStream(byte)); to create the BufferedImage and then check how to resize Image in java? to understand how to resize it.

Arvind Kumar Avinash
  • 71,965
  • 6
  • 74
  • 110