array ( 0 => 'index.php', 1 => 'PHP Manual', ), 'head' => array ( 0 => 'UTF-8', 1 => 'ru', ), 'this' => array ( 0 => 'imagickdraw.setcliprule.php', 1 => 'ImagickDraw::setClipRule', ), 'up' => array ( 0 => 'class.imagickdraw.php', 1 => 'ImagickDraw', ), 'prev' => array ( 0 => 'imagickdraw.setclippath.php', 1 => 'ImagickDraw::setClipPath', ), 'next' => array ( 0 => 'imagickdraw.setclipunits.php', 1 => 'ImagickDraw::setClipUnits', ), 'alternatives' => array ( ), 'source' => array ( 'lang' => 'ru', 'path' => 'reference/imagick/imagickdraw/setcliprule.xml', ), ); $setup["toc"] = $TOC; $setup["toc_deprecated"] = $TOC_DEPRECATED; $setup["parents"] = $PARENTS; manual_setup($setup); ?>
(PECL imagick 2, PECL imagick 3)
ImagickDraw::setClipRule — Устанавливает правило заливки многоугольника, которое будет использоваться обтравочным контуром
Функцию пока не задокументировали; для знакомства доступен только список аргументов.
Устанавливает правило заливки многоугольника, которое будет использоваться обтравочным контуром.
Функция не возвращает значения после выполнения.
Пример #1 Пример использования ImagickDraw::setClipRule()
<?php
function setClipRule($strokeColor, $fillColor, $backgroundColor) {
$draw = new \ImagickDraw();
$draw->setStrokeColor($strokeColor);
$draw->setFillColor($fillColor);
$draw->setStrokeOpacity(1);
$draw->setStrokeWidth(2);
//\Imagick::FILLRULE_EVENODD
//\Imagick::FILLRULE_NONZERO
$clipPathName = 'testClipPath';
$draw->pushClipPath($clipPathName);
$draw->setClipRule(\Imagick::FILLRULE_EVENODD);
$draw->rectangle(0, 0, 300, 500);
$draw->rectangle(200, 0, 500, 500);
$draw->popClipPath();
$draw->setClipPath($clipPathName);
$draw->rectangle(200, 200, 300, 300);
$imagick = new \Imagick();
$imagick->newImage(500, 500, $backgroundColor);
$imagick->setImageFormat("png");
$imagick->drawImage($draw);
header("Content-Type: image/png");
echo $imagick->getImageBlob();
}
?>