PHP 8.4.2 Released!

imagesetbrush

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

imagesetbrush Установка изображения (кисти), посредством которого будут рисоваться линии

Описание

imagesetbrush(GdImage $image, GdImage $brush): bool

imagesetbrush() задаёт изображение, которое будет использоваться функциями для рисования линий (такими как imageline() и imagepolygon()) при использовании цветов IMG_COLOR_BRUSHED или IMG_COLOR_STYLEDBRUSHED.

Предостережение

Дополнительных действий после завершения работы с кистью не требуется, однако если изображение кисти уничтожено, нельзя пользоваться цветами IMG_COLOR_BRUSHED или IMG_COLOR_STYLEDBRUSHED, пока не будет установлено новое изображение кисти!

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

image

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

brush

Объект изображения.

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

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

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

Версия Описание
8.0.0 image и brush теперь ожидают экземпляр GdImage; ранее ожидался ресурс (resource).

Примеры

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

<?php
// Загрузка минилоготипа php
$php = imagecreatefrompng('./php.png');

// Создание основного изображения 100x100
$im = imagecreatetruecolor(100, 100);

// Заливка фона белым цветом
$white = imagecolorallocate($im, 255, 255, 255);
imagefilledrectangle($im, 0, 0, 299, 99, $white);

// Установка кисти
imagesetbrush($im, $php);

// Рисование линии из изображений кисти
imageline($im, 50, 50, 50, 60, IMG_COLOR_BRUSHED);

// Вывод и очистка памяти
header('Content-type: image/png');

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

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

Вывод примера: imagesetbrush()

Добавить

Примечания пользователей 1 note

up
0
brent at ebrent dot net
18 years ago
Use a brush to create a thick line.

To create a 3x3 red brush:

<?php
$brush_size
= 3;
$brush = imagecreatetruecolor($brush_size,$brush_size);
$brush_color = imagecolorallocate($brush,255,0,0);
imagefill($brush,0,0,$brush_color);
imagesetbrush($im,$brush);
?>

Then use imageline() or imagepolygon() with IMG_COLOR_BRUSHED as the color.

To stop using the brush, destroy it:

<?php imagedestroy($brush); ?>

The brush can also be created from an existing image.
To Top