(PHP 4 >= 4.0.6, PHP 5, PHP 7, PHP 8)
imagesetstyle — Устанавливает стиль рисования линий
Функция imagesetstyle() устанавливает стиль, который будут использовать
функции рисования линий наподобие imageline()
и imagepolygon() при установке специального цвета
IMG_COLOR_STYLED
или IMG_COLOR_STYLEDBRUSHED
.
image
Объект GdImage, который возвращает одна из функций, создающих изображения, например, imagecreatetruecolor().
style
Массив с цветами пикселей. Параметр принимает константу
IMG_COLOR_TRANSPARENT
для добавления прозрачной точки.
Обратите внимание, что нельзя передавать в параметр style
пустой массив.
Функция возвращает true
, если выполнилась успешно, или false
, если возникла ошибка.
Следующий пример рисует пунктирную линию из левого верхнего угла изображения в правый нижний:
Пример #1 Пример установки стиля рисования линий функцией imagesetstyle()
<?php
header("Content-type: image/jpeg");
$im = imagecreatetruecolor(100, 100);
$w = imagecolorallocate($im, 255, 255, 255);
$red = imagecolorallocate($im, 255, 0, 0);
/* Рисование пунктирной линии, 5 красных точек, 5 белых */
$style = array($red, $red, $red, $red, $red, $w, $w, $w, $w, $w);
imagesetstyle($im, $style);
imageline($im, 0, 0, 100, 100, IMG_COLOR_STYLED);
/* Рисование линии из смайликов функциями imagesetbrush() с imagesetstyle() */
$style = array($w, $w, $w, $w, $w, $w, $w, $w, $w, $w, $w, $w, $red);
imagesetstyle($im, $style);
$brush = imagecreatefrompng("http://www.libpng.org/pub/png/images/smile.happy.png");
$w2 = imagecolorallocate($brush, 255, 255, 255);
imagecolortransparent($brush, $w2);
imagesetbrush($im, $brush);
imageline($im, 100, 0, 0, 100, IMG_COLOR_STYLEDBRUSHED);
imagejpeg($im);
?>
Вывод приведённого примера будет похож на: