Programa Java para recortar imágenes usando la clase BufferedImage

En el lenguaje de programación Java, necesitamos algunas clases para recortar una imagen. Entonces estas clases son las siguientes:

1. Para leer y escribir un archivo de imagen tenemos que importar la clase File. Esta clase representa nombres de rutas de archivos y directorios en general.

import java.io.File

2. Para manejar errores usamos la clase IOException.

import java.io.IOException

3. Para contener la imagen, creamos el objeto BufferedImage para eso usamos la clase BufferedImage. Este objeto se utiliza para almacenar una imagen en la RAM.

import java.awt.image.BufferedImage

4. Para realizar la operación de lectura y escritura de la imagen, importaremos la clase ImageIO. Esta clase tiene métodos estáticos para leer y escribir una imagen.

import javax.imageio.ImageIO

Acercarse:

  1. Cambiar dimensiones de la imagen
  2. Usando algunos métodos incorporados de la clase BufferedImage y Color c

Ejemplo:

Java

// Java Program to Crop Image Using BufferedImage Class
 
// Importing required packages
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;
import javax.imageio.ImageIO;
 
// Main class
public class GFG {
 
    // Main driver method
    public static void main(String[] args)
    {
        // Try block to check for exceptions
        try {
 
            // Reading original image from local path by
            // creating an object of BufferedImage class
            BufferedImage originalImg = ImageIO.read(
                new File("D:/test/Image.jpeg"));
 
            // Fetching and printing alongside the
            // dimensions of original image using getWidth()
            // and getHeight() methods
            System.out.println("Original Image Dimension: "
                               + originalImg.getWidth()
                               + "x"
                               + originalImg.getHeight());
 
            // Creating a subimage of given dimensions
            BufferedImage SubImg
                = originalImg.getSubimage(50, 50, 50, 50);
 
            // Printing Dimensions of new image created
            System.out.println("Cropped Image Dimension: "
                               + SubImg.getWidth() + "x"
                               + SubImg.getHeight());
 
            // Creating new file for cropped image by
            // creating an object of File class
            File outputfile
                = new File("D:/test/ImageCropped.jpeg");
 
            // Writing image in new file created
            ImageIO.write(SubImg, "jpg", outputfile);
 
            // Display message on console representing
            // proper execution of program
            System.out.println(
                "Cropped Image created successfully");
        }
 
        // Catch block to handle the exceptions
        catch (IOException e) {
 
            // Print the exception along with line number
            // using printStackTrace() method
            e.printStackTrace();
        }
    }
}

Producción: 

Cropped Image created successfully

Además, después de ejecutar el programa, la consola mostrará un mensaje de ejecución y se creará una nueva imagen recortada en la ruta ingresada que se muestra a continuación: 

Publicación traducida automáticamente

Artículo escrito por sam_2200 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *