PHP | imagickdraw setClipRule()函数
ImagickDraw::setClipRule()函数是PHP中的一个内置函数,用于设置剪切路径使用的多边形填充规则。这通常对最终图像没有任何影响,但仍然提供不同的 FILLRULE 方法来完成相同的任务。
句法:
bool ImagickDraw::setClipRule( int $fill_rule )
参数:此函数接受单个参数$fill_rule ,该参数包含一个对应于 FILLRULE 常量之一的整数。
FILLRULE 常量列表如下:
- imagick::FILLRULE_UNDEFINED (0)
- imagick::FILLRULE_EVENODD (1)
- imagick::FILLRULE_NONZERO (2)
返回值:此函数在成功时返回 TRUE。
异常:此函数在出错时抛出 ImagickException。
下面给出的程序说明了PHP中的ImagickDraw::setClipRule()函数:
方案一:
setClipRule(imagick::FILLRULE_NONZERO);
// Get clipRule
echo $draw->getClipRule();
?>
输出:
2 // which corresponds to imagick::FILLRULE_NONZERO.
方案二:
newImage(500, 250, 'green');
// Create a new ImagickDraw object
$draw = new ImagickDraw();
$draw->setClipRule(imagick::FILLRULE_EVENODD);
$draw->setFontSize(24);
$draw->annotation(160, 125,
'The clipRule is '
. $draw->getClipRule() . '.');
// Render the draw commands
$imagick->drawImage($draw);
// Show the output
$imagick->setImageFormat('png');
header("Content-Type: image/png");
echo $imagick->getImageBlob();
?>
输出:
参考: https://www. PHP.net/manual/en/imagickdraw.setcliprule。 PHP