Cómo fusionar fotos en Java

Este artículo explica cómo fusionar photos en Java. Se analiza la preparación del entorno, el procedimiento paso a paso y un código de muestra ejecutable para crear un unidor de fotografías en Java. Esta información es útil para trabajar con esta característica en entornos Java en diferentes plataformas.

Pasos para fusionar fotos en Java

  1. Prepare el entorno para usar Aspose.Imaging for Java con el Administrador de repositorio
  2. Haga una lista de imágenes para calcular las dimensiones de la imagen de salida.
  3. Combine las imágenes de origen en una y cree una fuente de salida.
  4. Especificar diferentes propiedades de la clase JpegOptions
  5. Renderice la imagen fusionada con la instancia de clase JpegImage

Los pasos anteriores detallan el proceso completo para combinar fotos en Java. En el primer paso, enumere las diferentes imágenes que se fusionarán en una sola foto. Luego cree una nueva foto y expórtela a la imagen de salida antes de escribirla en el disco o en una secuencia según sus requisitos.

Código para fusionar fotos en Java

import com.aspose.imaging.*;
public class Main {
public static void main(String[] args) throws Exception // Merge photos in Java
{
// Set the licenses
new License().setLicense("License.lic");
// Creating an array of strings
String[] imagePaths = new String[3];
// Initializing array elements
imagePaths[0] = "Sample1.jpg";
imagePaths[1] = "Sample2.jpg";
imagePaths[2] = "Sample3.jpg";
// Path of output image
String outputPath = "output-combine.jpg";
// Get resulting image size
int newWidth = 0;
int newHeight = 0;
for (String imagePath : imagePaths) {
try (com.aspose.imaging.RasterImage image = (com.aspose.imaging.RasterImage) com.aspose.imaging.Image.load(imagePath)) {
com.aspose.imaging.Size size = image.getSize();
newWidth = Math.max(newWidth, size.getWidth());
newHeight += size.getHeight();
}
}
// Combine images into new one
try (com.aspose.imaging.imageoptions.JpegOptions options = new com.aspose.imaging.imageoptions.JpegOptions()) {
options.setSource(new com.aspose.imaging.sources.StreamSource()); // empty
options.setQuality(100);
// Create resultant image
try (com.aspose.imaging.fileformats.jpeg.JpegImage newImage = (com.aspose.imaging.fileformats.jpeg.JpegImage) com.aspose.imaging.Image.create(options, newWidth, newHeight)) {
int stitchedHeight = 0;
for (String imagePath : imagePaths) {
try (com.aspose.imaging.RasterImage image = (com.aspose.imaging.RasterImage) com.aspose.imaging.Image.load(imagePath)) {
com.aspose.imaging.Rectangle bounds = new com.aspose.imaging.Rectangle(0, stitchedHeight, image.getWidth(), image.getHeight());
newImage.saveArgb32Pixels(bounds, image.loadArgb32Pixels(image.getBounds()));
stitchedHeight += image.getHeight();
}
}
// Save resultant image
newImage.save(outputPath);
}
}
System.out.println("Done");
}
}

Este código de muestra se puede utilizar para desarrollar un combinador de imágenes en Java. Utiliza diferentes métodos de la clase JpegImage para crear la imagen de salida y verificar el tamaño de las imágenes. A continuación, crea un rectángulo y guarda la imagen de salida con el método Guardar; sin embargo, puede establecer diferentes características de la imagen de salida utilizando los métodos expuestos por la clase JpegOptions como la calidad escalada, el perfil de color RGB, el modo de redondeo de muestra, etc. según sus requisitos.

En este artículo, hemos aprendido cómo realizar fusión de imágenes en Java. Si está interesado en aprender a recortar imágenes, lea el artículo en cómo recortar imágenes en Java.

 Español