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. JDeli is the best enterprise-level Java image library for image manipulation.
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);
Are you a Java Developer working with Image files?
// Read an image
BufferedImage bufferedImage = JDeli.read(dicomImageFile);
// Read an image
BufferedImage bufferedImage = JDeli.read(heicImageFile);
// Write an image
JDeli.write(bufferedImage, "heic", outputStreamOrFile);
// Read an image
BufferedImage bufferedImage = JDeli.read(jpegImageFile);
// Write an image
JDeli.write(bufferedImage, "jpeg", outputStreamOrFile);
// Read an image
BufferedImage bufferedImage = JDeli.read(jpeg2000ImageFile);
// Write an image
JDeli.write(bufferedImage, "jpx", outputStreamOrFile);
// Write an image
JDeli.write(bufferedImage, "pdf", outputStreamOrFile);
// Read an image
BufferedImage bufferedImage = JDeli.read(pngImageFile);
// Write an image
JDeli.write(bufferedImage, "png", outputStreamOrFile);
// Read an image
BufferedImage bufferedImage = JDeli.read(tiffImageFile);
// Write an image
JDeli.write(bufferedImage, "tiff", outputStreamOrFile);
// Read an image
BufferedImage bufferedImage = JDeli.read(webpImageFile);
// Write an image
JDeli.write(bufferedImage, "webp", outputStreamOrFile);
What is JDeli?
JDeli is a commercial Java Image library that is used to read, write, convert, manipulate and process many different image formats.
Why use JDeli?
To handle many well known formats such as JPEG, PNG, TIFF as well as newer formats like AVIF, HEIC and JPEG XL in java with no calls to any external system or third party library.
What licenses are available?
We have 3 licenses available:
Server for on premises and cloud servers, Distribution for use in a named end user applications, and Custom for more demanding requirements.
How does JDeli compare?
We work hard to make sure JDeli performance is better than or similar to other java image libraries. Check out our benchmarks to see just how well JDeli performs.