PHP 8.6.0 Beta 1 is available for testing

ImagickDraw::pushPattern

(PECL imagick 2, PECL imagick 3)

ImagickDraw::pushPatternУказывает, что последующие команды вплоть до ImagickDraw::opPattern() составляют определение именованного паттерна

Описание

public function ImagickDraw::pushPattern(
string $pattern_id,
float $x,
float $y,
float $width,
float $height
): bool
Внимание

Функцию пока не задокументировали; для знакомства доступен только список аргументов.

Указывает, что последующие команды вплоть до DrawPopPattern() содержат определение именованного паттерна. Пространству паттерна назначаются координаты верхнего левого угла, ширина и высота, и оно становится пространством для рисования. Всё, что можно нарисовать, можно использовать в определении паттерна. Именованные паттерны могут использоваться в качестве определений обводки или кистей.

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

pattern_id

ID паттерна.

x

Координата x левого верхнего угла.

y

Координата y левого верхнего угла.

width

Ширина паттерна.

height

Высота паттерна.

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

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

Примеры

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

<?php
function pushPattern($strokeColor, $fillColor, $backgroundColor) {
 $draw = new \ImagickDraw();
 $draw->setStrokeColor($strokeColor);
 $draw->setFillColor($fillColor);
 $draw->setStrokeWidth(1);
 $draw->setStrokeOpacity(1);
 $draw->setStrokeColor($strokeColor);
 $draw->setFillColor($fillColor);
 $draw->setStrokeWidth(1);
 $draw->pushPattern("MyFirstPattern", 0, 0, 50, 50);
 for ($x = 0; $x < 50; $x += 10) {
 for ($y = 0; $y < 50; $y += 5) {
 $positionX = $x + (($y / 5) % 5);
 $draw->rectangle($positionX, $y, $positionX + 5, $y + 5);
 }
 }
 $draw->popPattern();
 $draw->setFillOpacity(0);
 $draw->rectangle(100, 100, 400, 400);
 $draw->setFillOpacity(1);
 $draw->setFillOpacity(1);
 $draw->push();
 $draw->setFillPatternURL('#MyFirstPattern');
 $draw->setFillColor('yellow');
 $draw->rectangle(100, 100, 400, 400);
 $draw->pop();
 $imagick = new \Imagick();
 $imagick->newImage(500, 500, $backgroundColor);
 $imagick->setImageFormat("png");
 $imagick->drawImage($draw);
 header("Content-Type: image/png");
 echo $imagick->getImageBlob();
}
?>

Нашли ошибку?

ИнструкцияИсправлениеСообщение об ошибке
+Добавить

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

Пользователи ещё не добавляли примечания для страницы

AltStyle によって変換されたページ (->オリジナル) /