59 lines
1.5 KiB
PHP
59 lines
1.5 KiB
PHP
--TEST--
|
|
Test ImagickDraw, pushPattern
|
|
--SKIPIF--
|
|
<?php require_once(dirname(__FILE__) . '/skipif.inc'); ?>
|
|
--FILE--
|
|
<?php
|
|
|
|
$backgroundColor = 'rgb(225, 225, 225)';
|
|
$strokeColor = 'rgb(0, 0, 0)';
|
|
$fillColor = 'DodgerBlue2';
|
|
|
|
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);
|
|
|
|
$bytes = $imagick->getImageBlob();
|
|
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
|
|
}
|
|
|
|
pushPattern($strokeColor, $fillColor, $backgroundColor) ;
|
|
echo "Ok";
|
|
?>
|
|
--EXPECTF--
|
|
Ok
|