imageantialias

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

imageantialiasОпределяет, применять ли функции сглаживания

Описание

imageantialias(GdImage $image, bool $enable): bool

Функция задействует механизмы сглаживания при рисовании линий и замкнутых многоугольников. Функция не поддерживает альфа-компоненты, выполняет операции прямого смешивания цветов и работает только с полноцветными truecolor-изображениями.

Стили и толщина не поддерживаются.

Сглаженные примитивы совместно с прозрачным фоном иногда дают неожиданный результат. Метод смешивания использует цвет фона наравне с любым другим цветом. Отсутствие поддержки альфа-компонента не даёт применять основанный на нём метод сглаживания.

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

image

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

enable

Включить сглаживание или нет.

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

Функция возвращает true, если выполнилась успешно, или false, если возникла ошибка.

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

Версия Описание
8.0.0 Параметр image теперь ожидает экземпляр класса GdImage; раньше параметр ждал корректный gd-ресурс (resource).
7.2.0 Функция imageantialias() доступна без ограничений. Ранее она была доступна, только если PHP был собран с использованием библиотеки GD, идущей с ним в комплекте.

Примеры

Пример #1 Сравнение двух линий, одна из которых рисуется с включённым сглаживанием

<?php

// Создание двух изображений
$aa = imagecreatetruecolor(400, 100);
$normal = imagecreatetruecolor(200, 100);

// Включение сглаживания для одного из них
imageantialias($aa, true);

// Задание цветов
$red = imagecolorallocate($normal, 255, 0, 0);
$red_aa = imagecolorallocate($aa, 255, 0, 0);

// Рисование линий
imageline($normal, 0, 0, 200, 100, $red);
imageline($aa, 0, 0, 200, 100, $red_aa);

// Размещение изображений рядом для сравнения (АА: слева, Обычное: справа)
imagecopymerge($aa, $normal, 200, 0, 0, 0, 200, 100, 100);

// Вывод результата
header('Content-type: image/png');

imagepng($aa);

?>

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


      Вывод примера: Сравнение двух линий, одна из которых рисуется с
      включённым сглаживанием

Смотрите также