當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


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。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。