La función imagesavealpha() es una función incorporada en PHP que se utiliza para establecer si se conserva o no la información completa del canal alfa al guardar imágenes PNG. El canal alfa indica si la imagen es completamente transparente u opaca. La combinación alfa debe deshabilitarse usando imagealphablending($im, false)) para retener el canal alfa en primer lugar.
Sintaxis:
bool imagesavealpha( resource $image, bool $save_flag )
Parámetros: esta función acepta dos parámetros, como se mencionó anteriormente y se describe a continuación:
- $image: Especifica el recurso de imagen a trabajar.
- $save_flag: Especifica si guardar el canal alfa o no.
Valor devuelto: esta función devuelve VERDADERO en caso de éxito o FALSO en caso de error.
Los siguientes ejemplos ilustran la función imagesavealpha() en PHP:
Ejemplo 1: En este ejemplo habilitaremos guardar información alfa.
<?php // Load the png image $png = imagecreatefrompng( 'https://media.geeksforgeeks.org/wp-content/uploads/geeksforgeeks-13.png'); // Turn off alpha blending imagealphablending($png, false); // Add alpha as 100 to image $transparent = imagecolorallocatealpha($png, 255, 255, 255, 100); imagefill($png, 0, 0, $transparent); // Set alpha flag to true so that // alpha info is saved in the image imagesavealpha($png, true); // Save the image imagepng($png, 'imagewithalphainfo.png'); imagedestroy($png); ?>
Producción:
This will save the image in the same folder as imagewithalphainfo.png with alpha info.
Ejemplo 2: En este ejemplo, deshabilitaremos el guardado de información alfa.
<?php // Load the png image $png = imagecreatefrompng( 'https://media.geeksforgeeks.org/wp-content/uploads/geeksforgeeks-13.png'); // Turn off alpha blending imagealphablending($png, false); // Add alpha as 100 to image $transparent = imagecolorallocatealpha($png, 255, 255, 255, 100); imagefill($png, 0, 0, $transparent); // Set alpha flag to false so that // alpha info is not saved in the image imagesavealpha($png, false); // Save the image imagepng($png, 'imagewithoutalphainfo.png'); imagedestroy($png); ?>
Producción:
This will save the image in the same folder as imagewithoutalphainfo.png without alpha info.
Referencia: https://www.php.net/manual/en/function.imagesavealpha.php