(PHP 4 >= 4.3.2, PHP 5, PHP 7, PHP 8)
imagesavealpha — Определяет, сохранять ли полную информацию альфа-канала при сохранении изображений
Функция imagesavealpha() устанавливает флаг, который определяет,
сохранится ли полная информация альфа-канала (в отличие от одноцветной прозрачности),
и сохраняет изображение.
Это поддерживается только для форматов изображений, которые содержат полную информацию об альфа-канале:
PNG, WebP и AVIF.
Замечание: Функцию imagesavealpha() вызывают только на изображениях в формате
PNG, поскольку для форматовWebPиAVIFвсегда сохраняется полный альфа-канал. Не рекомендуют полагаться на это поведение, поскольку оно, возможно, изменится в будущем. Поэтому функцию imagesavealpha() принудительно вызывают также на изображениях в форматахWebPиAVIF.
Альфа-смешивание потребуется отключить вызовом imagealphablending($im, false),
чтобы сохранить альфа-канал в первую очередь.
imageОбъект GdImage, который возвращает одна из функций, создающих изображения, например, imagecreatetruecolor().
enable
Параметр определяет, сохранять ли альфа-канал. Значение по умолчанию равняется false.
Функция возвращает true, если выполнилась успешно, или false, если возникла ошибка.
| Версия | Описание |
|---|---|
| 8.0.0 |
Параметр image теперь ожидает экземпляр класса GdImage;
раньше параметр ждал корректный gd-ресурс (resource).
|
Пример #1 Пример настройки сохранения полной информации альфа-канала при сохранении изображения функцией imagesavealpha()
<?php
// Загрузка PNG-изображения с альфа-каналом
$png = imagecreatefrompng('./alphachannel_example.png');
// Выключение альфа-смешения
imagealphablending($png, false);
// Какие-то операции
// Установка альфа-флага
imagesavealpha($png, true);
// Вывод изображения
header('Content-Type: image/png');
imagepng($png);
?>