当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


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()函数:

程序1:

<?php 
  
// Create a new ImagickDraw object 
$draw = new ImagickDraw(); 
     
// Set the clipRule 
$draw->setClipRule(imagick::FILLRULE_NONZERO); 
     
// Get clipRule 
echo $draw->getClipRule(); 
?>

输出:

2 // which corresponds to imagick::FILLRULE_NONZERO.

程序2:

<?php 
    
// Create a new imagick object 
$imagick = new Imagick(); 
    
// Create a image on imagick object 
$imagick->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



相关用法


注:本文由纯净天空筛选整理自gurrrung大神的英文原创作品 PHP | ImagickDraw setClipRule() Function。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。