imagelayereffect

(PHP 4 >= 4.3.0, PHP 5, PHP 7, PHP 8)

imagelayereffect Установка флага альфа сопряжения для использования эффектов наложения изображений

Описание

imagelayereffect(GdImage$image, int$effect): bool

Установка флага альфа сопряжения для использования эффектов наложения изображений.

Список параметров

image

Объект GdImage, который возвращает одна из функций, создающих изображения, например, imagecreatetruecolor().

effect

Одна из следующих констант:

IMG_EFFECT_REPLACE
Использовать замену пикселов (аналогично передаче true в imagealphablending())
IMG_EFFECT_ALPHABLEND
Использовать обычное сопряжение цветов (аналогично передаче false в imagealphablending())
IMG_EFFECT_NORMAL
То же, что и IMG_EFFECT_ALPHABLEND.
IMG_EFFECT_OVERLAY
В результате наложения картинки с этим эффектом чёрные и белые пикселы фона изображения останутся так же чёрными и белыми, а серые поменяют цвет на цвет пиксела накладываемого изображения.
IMG_EFFECT_MULTIPLY
Оверлеи с множителем эффекта.

Возвращаемые значения

Возвращает true в случае успешного выполнения или false, если возникла ошибка.

Список изменений

ВерсияОписание
8.0.0 Параметр image теперь ожидает экземпляр класса GdImage; раньше параметр ждал корректный gd-ресурс (resource).
7.2.0 Добавлена IMG_EFFECT_MULTIPLY (требует системную библиотеку libgd >= 2.1.1 или libgd идущую в комплекте с PHP).

Примеры

Пример #1 Пример использования imagelayereffect()

<?php
// Задание изображения
$im = imagecreatetruecolor(100, 100);

// Установка фона
imagefilledrectangle($im, 0, 0, 100, 100, imagecolorallocate($im, 220, 220, 220));

// Применение флага альфа сопряжения - overlay
imagelayereffect($im, IMG_EFFECT_OVERLAY);

// Рисуем два серых эллипса
imagefilledellipse($im, 50, 50, 40, 40, imagecolorallocate($im, 100, 255, 100));
imagefilledellipse($im, 50, 50, 50, 80, imagecolorallocate($im, 100, 100, 255));
imagefilledellipse($im, 50, 50, 80, 50, imagecolorallocate($im, 255, 100, 100));

// Вывод
header('Content-type: image/png');

imagepng($im);
imagedestroy($im);
?>

Вывод приведённого примера будет похож на:

Вывод примера: imagelayereffect()
To Top