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);
imagedestroy($aa);
imagedestroy($normal);
?>

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

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

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

To Top