Cómo reducir el tamaño de la imagen en Java

Cómo reducir el tamaño de la imagen en Java

Este reductor de tamaño de imagen biblioteca ofrece técnicas de compresión de nivel empresarial para comprimir imágenes. De hecho, puede personalizar sus llamadas a la API según los requisitos de su negocio utilizando varios tipos y niveles de compresión proporcionados por esta biblioteca rica en funciones. Por lo tanto, configuremos esta biblioteca en nuestro proyecto Java y construyamos un compresor de imágenes en línea. Este tutorial nos enseñará cómo reducir el tamaño de la imagen en Java mediante programación.

Se tratarán los siguientes puntos:

Instalación de la biblioteca del reductor de tamaño de imagen

La instalación de cualquier biblioteca es importante cuando se trata del desarrollo rápido de aplicaciones. De todos modos, puede descargar el archivo JAR o instalar esta biblioteca usando las siguientes configuraciones de Maven.

<repository>
    <id>AsposeJavaAPI</id>
    <name>Aspose Java API</name>
    <url>https://repository.aspose.com/repo/</url>
</repository>
<dependency>
    <groupId>com.aspose</groupId>
    <artifactId>aspose-imaging</artifactId>
    <version>20.12</version>
    <classifier>jdk16</classifier>
</dependency>

Reducir el tamaño de la imagen PNG mediante programación

Hay una gran cantidad de métodos ofrecidos por esta biblioteca que puede encontrar aquí. Además, puede configurar el color, el tipo de compresión y muchos otros atributos de las imágenes mediante programación.

Siga los siguientes pasos y el fragmento de código para comprimir imágenes PNG:

  1. Cargue el archivo de imagen PNG de origen llamando al método Image.load.
  2. Bucle sobre el rango CompressionLevel posible.
  3. Cree una instancia de la clase OpcionesPng para cada PNG resultante para acceder a las opciones de PNG.
  4. Establezca el nivel de compresión. Considerando que, el nivel de compresión de imagen png en el rango de 0-9, donde 9 es la compresión máxima y 0 es el modo de almacenamiento.
  5. Guarde los resultados en el disco llamando al método save.

Copie y pegue el siguiente código en su archivo principal:

// Cargue el archivo de imagen PNG de origen llamando al método Image.load.  
Image image = Image.load(  "output.png");
// Bucle sobre el posible rango de CompressionLevel
for (int i = 0; i <= 9; i++) {
    // Cree una instancia de PngOptions para cada PNG resultante para acceder a las opciones de PNG.
    PngOptions options = new PngOptions();
    // Establezca el nivel de compresión. Considerando que, el nivel de compresión de imagen png en el rango de 0-9, donde 9 es la compresión máxima y 0 es el modo de almacenamiento. 
    options.setCompressionLevel(i);
    // Guarde el resultado en el disco llamando al método de guardado. 
    image.save("CompressingFiles_out" + i + ".png", options);
}

Comprimir imágenes TIFF en Java

Del mismo modo, esta biblioteca le permite crear un compresor de imágenes en línea donde puede reducir el tamaño de los archivos de imagen TIFF utilizando unas pocas líneas de código Java.

Puede seguir los pasos que se mencionan a continuación:

  1. Invoque el método image.load para cargar una imagen a través de la ubicación de la ruta del archivo o la transmisión.
  2. Cree una instancia de TiffOptions para la imagen resultante.
  3. Establezca BitsPerSample, modo fotométrico y modo de compresión llamando al método setBitsPerSample.
  4. Llame al método setCompression para establecer la compresión.
  5. Invoque el método setPhotometric para establecer la fotométrica.
  6. Configure la paleta de escala de grises llamando al método setPalette.
  7. Save la salida.
// Invoque el método image.load para cargar una imagen a través de la ubicación de la ruta del archivo o la secuencia.  
try (Image image = Image.load(  "sample.tiff"))
{
    // Cree una instancia de TiffOptions para la imagen resultante. 
    TiffOptions outputSettings = new TiffOptions(TiffExpectedFormat.Default);
    // Establezca BitsPerSample, modo fotométrico y modo de compresión llamando al método setBitsPerSample.
    outputSettings.setBitsPerSample(new int[] { 4 });
    // Llame al método setCompression para establecer la compresión. 
    outputSettings.setCompression(TiffCompressions.AdobeDeflate);
    // Invoque el método setPhotometric para establecer el fotométrico. 
    outputSettings.setPhotometric(TiffPhotometrics.Palette);
    // Configure la paleta de escala de grises llamando al método setPalette. 
    outputSettings.setPalette(ColorPaletteHelper.create4BitGrayscale(false));
    // Guarde la salida. 
    image.save(  "out_adobedeflate.tiff", outputSettings);
}

Puedes ver la salida en la siguiente imagen:

Comprimir imágenes TIFF

Obtenga una licencia gratis

Puede aprovechar una licencia temporal gratuita para probar la API sin limitaciones de evaluación.

Resumiendo

Esto nos lleva al final de este tutorial. Ha aprendido cómo reducir el tamaño de la imagen en Java junto con otros temas importantes. Además, ha visto cómo comprimir imágenes TIFF y reducir el tamaño de la imagen PNG mediante programación. Esta publicación de blog realmente lo ayudará a crear un compresor de imágenes en línea utilizando unas pocas líneas de código fuente. Finalmente, no se salte la documentación en caso de que vaya a crear un reductor de tamaño de imagen para su aplicación empresarial.

Además, le sugerimos que siga nuestra Guía de introducción.

Finalmente, conholdate.com está escribiendo nuevas publicaciones de blog. Por lo tanto, manténgase en contacto para recibir actualizaciones periódicas.

Hacer una pregunta

Puede informarnos acerca de sus preguntas o consultas en nuestro foro.

preguntas frecuentes

¿Cómo cambio el tamaño de una imagen en la codificación?

Instale esta biblioteca de procesamiento de imágenes de Java para cambiar el tamaño de las imágenes mediante programación. Ofrece métodos para manipular imágenes utilizando unas pocas líneas de código fuente en Java.

Ver también