cambiar el tamaño de la imagen

Cambiar el tamaño de la imagen usando Java Cloud SDK

Nuestra vida personal a oficial está rodeada de imágenes rasterizadas. Mientras usamos teléfonos móviles, escáneres, dispositivos de imágenes y varias otras cámaras utilizadas en una variedad de dispositivos, producimos una gran cantidad de datos en términos de imágenes. Ahora, dependiendo del algoritmo de compresión, cada dispositivo produce las imágenes en diferentes dimensiones y tamaños. Pero en caso de que tengamos el requisito de almacenar las imágenes (JPG, PNG, GIF, TIFF, etc.) en dimensiones unificadas, entonces debemos cambiar el tamaño de las imágenes. Tenemos una gran cantidad de aplicaciones de cambio de tamaño de fotos disponibles en el mercado, pero en caso de que necesitemos cambiar el tamaño de la imagen en línea de forma masiva, una solución programática siempre es un enfoque viable. Por lo tanto, en este artículo, discutiremos los detalles/pasos sobre cómo desarrollar un redimensionador de imágenes usando Java Cloud SDK.

API de cambio de tamaño de imagen

Para cambiar el tamaño de la imagen, vamos a utilizar Aspose.Imaging Cloud SDK for Java. Debido a su arquitectura basada en REST, podemos acceder a la API en cualquier plataforma y desarrollar el redimensionado de fotos. Además de la función para cambiar el tamaño de la imagen en línea, también le permite crear, editar y transformar archivos de imagen a una variedad de formatos de archivo compatibles. Ahora, para comenzar, debemos agregar su referencia en el proyecto Java al incluir la siguiente información en pom.xml (proyecto de tipo de compilación maven).

<repositories> 
    <repository>
        <id>aspose-cloud</id>
        <name>artifact.aspose-cloud-releases</name>
        <url>http://artifact.aspose.cloud/repo</url>
    </repository>   
</repositories>

<dependencies>
    <dependency>
        <groupId>com.aspose</groupId>
        <artifactId>aspose-imaging-cloud</artifactId>
        <version>22.4</version>
    </dependency>
</dependencies>

En caso de que no tenga una cuenta en Aspose Cloud Dashboard, cree una cuenta gratuita a través de una dirección de correo electrónico válida. Ahora inicie sesión con la cuenta recién creada y busque/cree el ID del cliente y el secreto del cliente en Cloud Dashboard. Estos detalles son necesarios para fines de autenticación en las siguientes secciones.

Cambiar el tamaño de la imagen en Java

Esta sección explica los pasos para cambiar el tamaño de la imagen PNG. La API espera cargar la imagen desde la unidad local que necesitamos para pasar directamente la imagen en el cuerpo de la solicitud. Después de cambiar el tamaño de la operación png, podemos guardar la imagen actualizada en Cloud Storage especificando el valor del parámetro outPath. Sin embargo, si no especificamos el valor, la respuesta contiene una imagen transmitida.

  • Cree una instancia de ImagingApi basada en credenciales de cliente personalizadas
  • Lea el archivo PNG desde la carpeta local usando el objeto Archivo
  • Cree una instancia de byte [] y lea todos los bytes del archivo usando el método readAllBytes (…)
  • Especificar nuevas dimensiones de imagen utilizando objetos Integer
  • Ahora cree una instancia de CreateResizedImageRequest donde especificamos el nombre de la imagen resultante
  • Finalmente, cambie el tamaño de la imagen usando el método createResizedImage (…)
// Obtenga ClientID y ClientSecret de https://dashboard.aspose.cloud/
String clientId = "7ef10407-c1b7-43bd-9603-5ea9c6db83cd";
String clientSecret = "ba7cc4dc0c0478d7b508dd8ffa029845";

// crear objeto de imagen
ImagingApi imageApi = new ImagingApi(clientSecret, clientId);

// cargar archivo desde disco local
File f = new File("PinClipart.png");

// leer el contenido de la imagen PNG a la matriz de bytes
byte[] bytes = Files.readAllBytes(f.toPath());
			
// nuevas dimensiones para la imagen resultante
int newWidth = 150;
int newHeight = 150;
		    
// cree una solicitud de cambio de tamaño de imagen mientras especifica el nombre de la imagen resultante
CreateResizedImageRequest resizeRequest = new CreateResizedImageRequest(bytes, newWidth, newHeight, null, "Updated.png", null);

// cambiar el tamaño de la imagen en línea y guardar la salida en el almacenamiento en la nube
imageApi.createResizedImage(resizeRequest);

Cambiar el tamaño de GIF usando los comandos cURL

Durante la operación de cambio de tamaño de la imagen, también podemos especificar el formato actualizado para la imagen. Entonces, en esta sección, vamos a cambiar el tamaño de GIF y guardar la salida en formato JPG usando los comandos cURL. Entonces, como requisito previo, primero debemos generar un token de acceso JWT (basado en las credenciales del cliente) mientras ejecutamos el siguiente comando.

curl -v "https://api.aspose.cloud/connect/token" \
-X POST \
-d "grant_type=client_credentials&client_id=bb959721-5780-4be6-be35-ff5c3a6aa4a2&client_secret=4d84d5f6584160cbd91dba1fe145db14" \
-H "Content-Type: application/x-www-form-urlencoded" \
-H "Accept: application/json"

Una vez que se haya generado el token JWT, llame a la API ResizeImage para cambiar el tamaño de la imagen y guardar la salida en formato JPG en la unidad local (el parámetro de formato de archivo resultante es opcional).

curl -v -X GET "https://api.aspose.cloud/v3.0/imaging/winter.gif/resize?newWidth=200&newHeight=200&format=JPG" \
-H  "accept: application/json" \
-H  "authorization: Bearer <JWT Token>" \
-o "resultant.jpg"
cambiar el tamaño de la imagen

Cambiar el tamaño de la vista previa de GIF

La imagen GIF de origen se puede descargar de winter.gif y la imagen resultante de resultant.jpg.

Conclusión

Hemos aprendido un enfoque sorprendente para cambiar el tamaño de la imagen en línea usando un fragmento de código Java. También nos ha ilustrado sobre los detalles sobre cómo cambiar el tamaño de la imagen sin perder calidad usando los comandos cURL. Tenga en cuenta que también puede explorar las capacidades de la API dentro del navegador web mientras utiliza la Referencia de la API de Swagger. Ahora, además de las capacidades de Picture Resizer, puede explorar y conocer otras funciones interesantes de la API en Documentación del producto. No obstante, todos nuestros SDK de Cloud se publican con licencia MIT, por lo que puede considerar descargar el código fuente completo de GitHub (que puede modificar según sus requisitos). Por último, si encuentra algún problema al usar la API, puede considerar comunicarse con nosotros para una resolución rápida a través del foro de soporte del producto gratuito.

Artículos relacionados

Visite los siguientes enlaces para obtener más información sobre: