In this article, I will show you how to change image size of images in Java.
ImageIO allows the reading and writing of images in Java and processing the image. I will also cover image resizing using our JDeli image library.
How to resize an image in ImageIO
- Create a File handle, InputStream, or URL pointing to the raw image.
- ImageIO will now be able to read a BMP file into a BufferedImage.
- Create a second BufferedImage at the new size
- Create a transformation
- Apply the transformation
and the Java code to resize an image in ImageIO…
File imageFile = new File("C:\\path\\to\\pdf\\image.tif");
BufferedImage image = ImageIO.read(imageFile);
final int w = image.getWidth();
final int h = image.getHeight();
BufferedImage scaledImage = new BufferedImage((w * 2), (h * 2), BufferedImage.TYPE_INT_ARGB);
final AffineTransform at = AffineTransform.getScaleInstance(2.0, 2.0);
final AffineTransformOp ato = new AffineTransformOp(at, AffineTransformOp.TYPE_BICUBIC);
scaledImage = ato.filter(image, scaledImage);
How to resize an image in JDeli
- Add JDeli to your class or module path. (download the trial jar).
- Create a File, InputStream pointing to the raw image. You can also use a byte[] containing the image data.
- Read the image into a BufferedImage
- Create a transformation
- Apply the transformation
and the Java code to resize an image in JDeli…
File imageFile = new File("C:\\path\\to\\pdf\\exampleImage.tif");
BufferedImage image = JDeli.read(imageFile);
ImageProcessingOperations operations = new ImageProcessingOperations();
operations.scale(scalingFactor);
image = JDeli.process(ImageProcessingOperations operations,
BufferedImage image);