Guía Sencilla Para Convertir Imágenes a Webp En Php



El 30 de septiembre de 2010, Google anunció la publicación de un nuevo estándar abierto para la compresión con pérdida de gráficos de 24 bits en la web. La base para este estándar fue el formato de vídeo VP8, desarrollado por On2 Technologies, empresa que Google adquirió el mismo año.

Google trabajó para ampliar el formato WebP con características tales como un modo de compresión sin pérdida, transparencia (canal alfa) y animaciones. 

Chrome soporta el formato de compresión desde finales de 2010, pero hasta ahora, algunos navegadores solo soportan WebP de forma experimental (cuyas actualizaciones regulares siguen sin ofrecer soporte), mientras que Safari, sigue sin soportar e formato.

Se puede encontrar información actualizada sobre el soporte de WebP en caniuse.com.

En este tutorial, explicaremos cómo convertir una imagen png, jpg a webp en PHP.

Para convertir imágenes de otros formatos a webp, debemos usar la función php imagewebp():

imagewebp ( resource $image [, mixed $to = NULL [, int $quality = 80 ]] ) : bool

Esta función puede guardar o sacar una imagen webp de otros tipos de imágenes.

Esta función acepta tres parámetros:

1. $image: Especifica la imagen en el que se quiere trabajar.


2. $to (Opcional): Especifica la ruta para guardar el archivo.


3. $quality (Opcional): Especifica la calidad de la imagen.

Aquí os presentamos una función para convertir imágenes png en webp.

function convertImageToWebP($source, $destination, $quality=80) {  	
$extension = pathinfo($source, PATHINFO_EXTENSION);  	
if ($extension == 'jpeg' || $extension == 'jpg')   		
$image = imagecreatefromjpeg($source);  	
elseif ($extension == 'gif')   		
$image = imagecreatefromgif($source);  	
elseif ($extension == 'png')   		
$image = imagecreatefrompng($source);  	
return imagewebp($image, $destination, $quality);  	  
}

¿Cómo funciona esta función?

En primer lugar, obtenemos el formato de la imagen de origen por medio de pathinfo().

$extension = pathinfo($source, PATHINFO_EXTENSION);

Luego, creamos una imagen por tipo de imagen:

if ($extension == 'jpeg' || $extension == 'jpg')   		
$image = imagecreatefromjpeg($source);  	
elseif ($extension == 'gif')   		
$image = imagecreatefromgif($source);  	
elseif ($extension == 'png')   		
$image = imagecreatefrompng($source);

Y finalmente, conviertimos png, jpg a imagen webp:

return imagewebp($image, $destination, $quality);

Business vector created by freepik - www.freepik.com
 
by Silvia Mazzetta Date: 04-04-2020 php imagenes webp compresor visitas : 2132  
 
Silvia Mazzetta

Silvia Mazzetta

Web Developer, Blogger, Creative Thinker, Social media enthusiast, Italian expat in Spain, mom of little 6 years old geek, founder of  @manoweb. A strong conceptual and creative thinker who has a keen interest in all things relate to the Internet. A technically savvy web developer, who has multiple  years of website design expertise behind her.  She turns conceptual ideas into highly creative visual digital products. 

 
 
 

Artículos relacionados

ALL USERSUSER