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


PHP ImagickDraw setStrokeMiterLimit()用法及代码示例


ImagickDraw::setStrokeMiterLimit()函数是PHP中的一个内置函数,用于指定笔划的斜接限制。当两条线段以锐角相交并且为“ lineJoin”指定了斜接时,斜接可能会延伸到远远超出行程路径的线的粗细。 mitreLimit”对斜接长度与“ lineWidth”的比率施加了限制。

用法:

bool ImagickDraw::setStrokeMiterLimit( $miterlimit )

参数:该函数接受单个参数$miterlimit,该参数用于将斜接限制值保留为整数类型。


返回值:该函数不返回任何值。

以下示例程序旨在说明PHP中的ImagickDraw::setStrokeMiterLimit()函数:

程序1:

<?php 
  
// require_once('path/vendor/autoload.php'); 
  
// Create an ImagickDraw object 
$draw = new \ImagickDraw(); 
  
// Set the Stroke Opacity 
$draw->setStrokeOpacity(1); 
  
// Set the Stroke Color 
$draw->setStrokeColor('Black'); 
  
// Set the Stroke Opacity 
$draw->setStrokeOpacity(0.6); 
  
// Set the Stroke Width   
$draw->setStrokeWidth(4); 
  
// Set the image filled color  
$draw->setFillColor('lightgreen'); 
      
// Set the Stroke Miter Limit  
$draw->setStrokeMiterLimit(40 * 12); 
$points = [ 
        ['x' => 50 * 6, 'y' => 10 * 5], 
        ['x' => 20 * 7, 'y' => 30 * 5],  
        ['x' => 60 * 8, 'y' => 50 * 5],  
        ['x' => 70 * 3, 'y' => 15 * 5], 
    ]; 
  
// Draw the polygon  
$draw->polygon($points); 
  
// Create new Imagick object  
$image = new \Imagick(); 
  
// Set the dimensions of the image 
$image->newImage(500, 300, 'white'); 
  
// Set the image format 
$image->setImageFormat("png"); 
  
// Draw the image 
$image->drawImage($draw); 
header("Content-Type: image/png"); 
  
// Display the Image 
echo $image->getImageBlob(); 
?>

输出:
setStrokeMiterLimit

程序2:

<?php 
   
// require_once('path/vendor/autoload.php'); 
   
// Create a ImagickDraw object to draw into. 
$draw = new ImagickDraw(); 
   
// Set the Stroke Width 
$draw->setStrokeWidth(5); 
   
// Set the Stroke Miter Limit 
$draw->setStrokeMiterLimit(50 * 15); 
   
// Set the Stroke Color 
$draw->setStrokeColor('black'); 
   
// Set the image filled color 
$draw->setFillColor('red'); 
$points = [['x' => 40 * 5, 'y' => 10 * 5], 
          ['x' => 70 * 5, 'y' => 50 * 5],  
          ['x' => 60 * 5, 'y' => 15 * 5], ]; 
   
// Draw the polygon  
$draw->polygon($points); 
   
// Set the image filled color 
$draw->setFillColor('green'); 
   
// Set the translation points 
$draw->translate(10, 30); 
$points = [['x' => 40 * 5, 'y' => 10 * 5], 
           ['x' => 70 * 5, 'y' => 50 * 5],  
           ['x' => 60 * 5, 'y' => 15 * 5], ]; 
   
// Draw the polygon 
$draw->polygon($points); 
   
// Set the image filled color 
$draw->setFillColor('blue'); 
   
// Set the translation points 
$draw->translate(10, 30); 
$points = [['x' => 40 * 5, 'y' => 10 * 5],  
           ['x' => 70 * 5, 'y' => 50 * 5],  
           ['x' => 60 * 5, 'y' => 15 * 5], ]; 
   
// Draw the polygon 
$draw->polygon($points); 
   
// Set the image filled color 
$draw->setFillColor('yellow'); 
   
// Set the translation points 
$draw->translate(10, 30); 
$points = [['x' => 40 * 5, 'y' => 10 * 5],  
           ['x' => 70 * 5, 'y' => 50 * 5],  
           ['x' => 60 * 5, 'y' => 15 * 5], ]; 
   
// Draw the polygon 
$draw->polygon($points); 
   
// Create new Imagick object  
$image = new Imagick(); 
   
// Set the dimensions of the image 
$image->newImage(400, 400, 'white'); 
   
// Set the image format 
$image->setImageFormat("png"); 
    
// Draw the image  
$image->drawImage($draw); 
header("Content-Type: image/png"); 
   
// Display the image 
echo $image->getImageBlob(); 
?>

输出:
setStrokeMiterLimit

参考: http://php.net/manual/en/imagickdraw.setstrokemiterlimit.php



相关用法


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