(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);
?>