WebP es un formato de imagen moderno popular que proporciona una compresión superior sin pérdidas y con pérdidas para imágenes en la web. Este formato de imagen fue desarrollado por Google y pretende reemplazar los formatos de archivo JPEG, PNG y GIF. Admite compresión con pérdida y sin pérdida, así como animación y transparencia alfa. También son populares porque un archivo WebP es generalmente mucho más pequeño que un JPEG tradicional y, por lo tanto, los sitios web se cargan más rápido y brindan a los usuarios una mejor experiencia. Sin embargo, muchos sistemas convencionales aún requieren formatos de imagen de trama para fines de almacenamiento y procesamiento, por lo tanto, es posible que tengamos el requisito de realizar una conversión masiva de WebP a JPG. Entonces, en este artículo, vamos a discutir los detalles sobre cómo convertir WebP a JPG, WebP a PNG y WebP a GIF mediante programación.
- API REST de WebP a JPG
- Convertir WebP a JPEG en Java
- WebP a PNG en Java
- WebP a GIF usando comandos cURL
API REST de WebP a JPG
Nuestra solución basada en REST Aspose.Imaging Cloud SDK for Java es una API confiable de conversión y procesamiento de imágenes. Con la ayuda de esta API, puede implementar capacidades de procesamiento de imágenes (editar y transformar) en su aplicación. Admite imágenes rasterizadas, archivos de Photoshop, metarchivos y otros formatos como el formato WebP. Entonces, según el alcance de este artículo, usaremos esta API para convertir WebP a JPEG. Ahora, para comenzar con la utilización del SDK, debemos agregar su referencia en nuestro proyecto java incluyendo 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>
Una vez que se haya agregado la referencia de la API REST en el proyecto Java, obtenga sus credenciales de cliente de Cloud Dashboard. De lo contrario, primero debe registrar una cuenta gratuita mientras usa una dirección de correo electrónico válida.
Convertir WebP a JPEG en Java
Discutamos los detalles sobre cómo cargar y convertir WebP a formato JPG usando un fragmento de código Java.
- En primer lugar, cree un objeto de ImagingApi usando credenciales personalizadas
- En segundo lugar, cargue la imagen WebP usando el método readAllBytes(…) y pase a la matriz byte[]
- En tercer lugar, cree una instancia de UploadFileRequest proporcionando una imagen WebP como argumento y cárguela en el almacenamiento en la nube utilizando el método uploadFile(…)
- Ahora cree un objeto de ConvertImageRequest que tome el nombre de la imagen WebP y el formato JPG como argumentos
- Llame al método convertImage(…) para convertir WebP a formato JPEG. La salida se devuelve como flujo de respuesta.
- Finalmente, guarde el JPG resultante en la unidad local usando el objeto FileOutputStream
// Obtenga ClientID y ClientSecret de https://dashboard.aspose.cloud/
String clientId = "bb959721-5780-4be6-be35-ff5c3a6aa4a2";
String clientSecret = "4d84d5f6584160cbd91dba1fe145db14";
// crear objeto de imagen
ImagingApi imageApi = new ImagingApi(clientSecret, clientId);
// cargar la imagen WebP desde el disco local
File file1 = new File("WEBPSampleImage.webp");
byte[] imageStream = Files.readAllBytes(file1.toPath());
// crear objeto de solicitud de carga de archivo
UploadFileRequest uploadRequest = new UploadFileRequest("source.webp",imageStream,null);
// cargar la imagen WebP al almacenamiento en la nube
imageApi.uploadFile(uploadRequest);
// especificar el formato de salida como JPEG
String format = "jpg";
// Crear objeto de solicitud de conversión de imagen
ConvertImageRequest convertImage = new ConvertImageRequest("source.webp", format, null, null);
// convertir WebP a JPEG y devolver la salida en el flujo de respuesta
byte[] resultantImage = imageApi.convertImage(convertImage);
// Guarde el JPG resultante en la unidad local
FileOutputStream fos = new FileOutputStream("/Users/nayyer/Documents/" + "Converted.jpg");
fos.write(resultantImage);
fos.close();
La imagen WebP de muestra utilizada en el ejemplo anterior se puede descargar de WEBPSampleImage.webp y la salida de Converted.jpg.
WebP a PNG en Java
Esta sección analiza los detalles sobre cómo convertir WebP a formato PNG sin utilizar el almacenamiento en la nube.
- Primero, cree un objeto de ImagingApi usando credenciales personalizadas
- En segundo lugar, cargue la imagen WebP usando el método readAllBytes(…) y pase a la matriz byte[]
- En tercer lugar, cree un objeto de CreateConvertedImageRequest que tome el nombre de la imagen WebP y el formato pNG como argumentos.
- Ahora llama al método createConvertedImage(…) para convertir WebP a PNG. La salida se devuelve como flujo de respuesta.
- Finalmente, guarde el PNG resultante en la unidad local usando el objeto FileOutputStream
// Obtenga ClientID y ClientSecret de https://dashboard.aspose.cloud/
String clientId = "bb959721-5780-4be6-be35-ff5c3a6aa4a2";
String clientSecret = "4d84d5f6584160cbd91dba1fe145db14";
// crear objeto de imagen
ImagingApi imageApi = new ImagingApi(clientSecret, clientId);
// cargar la imagen WebP desde el disco local
File file1 = new File("WEBPSampleImage.webp");
byte[] imageStream = Files.readAllBytes(file1.toPath());
// especificar el formato de salida como PNG
String format = "png";
// Crear objeto de solicitud de conversión de imagen
CreateConvertedImageRequest convertRequest = new CreateConvertedImageRequest(imageStream,format,null,null);
// convertir WebP a PNG y devolver la salida en el flujo de respuesta
byte[] resultantImage = imageApi.createConvertedImage(convertRequest);
// Guarde el PNG resultante en la unidad local
FileOutputStream fos = new FileOutputStream("/Users/nayyer/Documents/" + "Converted.png");
fos.write(resultantImage);
fos.close();
Nota: - Si necesitamos guardar el PNG resultante en el almacenamiento en la nube, pase los detalles de la ruta PNG mientras crea un objeto de CreateConvertedImageRequest. En este enfoque, se omitirá el último paso para almacenar el flujo de salida en la unidad local.
WebP a GIF usando comandos cURL
También se puede acceder a la API REST a través de los comandos cURL, por lo que en esta sección, realizaremos la conversión de WebP a GIF usando los comandos cURL. Ahora el requisito previo es generar un token de acceso JWT (basado en las credenciales del cliente) usando 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"
Después de que se haya generado el JWT, ejecute el siguiente comando para realizar la conversión de WebP a GIF.
curl -v -X GET "https://api.aspose.cloud/v3.0/imaging/WEBPSampleImage.webp/convert?format=GIF" \
-H "accept: application/json" \
-H "authorization: Bearer <JWT Token>" \
-o "Converted,gif"
Conclusión
Este artículo ha explicado todos los detalles necesarios sobre cómo convertir WebP a JPEG, WebP a PNG y cómo realizar la conversión de WebP a GIF utilizando la API REST. Hemos aprendido los pasos para transformar WebP a JPG mediante programación o convertir webp a gif usando comandos cURL. Le recomendamos encarecidamente que explore la Documentación del producto, que es una increíble fuente de información para conocer otras características interesantes que ofrece la API.
También puede considerar probar las características de la API a través de SwaggerUI dentro de un navegador web y, en caso de que necesite descargar y modificar el código fuente de Cloud SDK, está disponible en GitHub (publicado bajo licencia MIT) . Por último, en caso de que encuentre 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: