ImagickDraw::setStrokePatternURL()函数是PHP中的内置函数,用于设置用于描画对象轮廓的模式。
用法:
bool ImagickDraw::setStrokePatternURL( string $stroke_url )
参数:该函数接受单个参数$stroke_url,该参数保存笔画图案的URL。
返回值:成功时此函数返回TRUE。
下面给出的程序说明了PHP中的ImagickDraw::setStrokePatternURL()函数:
程序1:在此程序中,我们将创建一个具有设计轮廓的矩形。
<?php 
  
// Create a new imagick object 
$imagick = new Imagick(); 
  
// Create a image on imagick object 
$imagick->newImage(800, 250, 'black'); 
  
// Create a new imagickDraw object 
$draw = new ImagickDraw(); 
  
// Push the pattern 
$draw->pushPattern("MyPattern", 0, 0, 50, 50); 
$color = ['red', 'black', 'cyan']; 
  
for ($x = 0; $x < 50; $x += 10) { 
    for ($y = 0; $y < 50; $y += 5) { 
        $draw->setFillColor($color[$y % 3]); 
        $draw->circle($x, $y + 80, $x % 2, $y); 
    } 
} 
  
// Pop the pattern 
$draw->popPattern(); 
  
// Set the stroke pattern URL 
$draw->setStrokePatternURL('#MyPattern'); 
  
// Set the stroke width 
$draw->setStrokeWidth(10); 
  
// Draw a rectangle on which pattern is made 
$draw->rectangle(200, 50, 500, 200); 
  
// Render the draw commands 
$imagick->drawImage($draw); 
  
// Show the output 
$imagick->setImageFormat('png'); 
header("Content-Type:image/png"); 
echo $imagick->getImageBlob(); 
?>输出:

程序2:在此程序中,我们将创建一个具有设计轮廓的圆。
<?php 
  
// Create a new imagick object 
$imagick = new Imagick(); 
  
// Create a image on imagick object 
$imagick->newImage(800, 250, 'white'); 
  
// Create a new imagickDraw object 
$draw = new ImagickDraw(); 
  
// Push the pattern 
$draw->pushPattern("MyPattern", 0, 0, 50, 50); 
  
for ($x = 0; $x < 50; $x += 10) {  
    for ($y = 0; $y < 50; $y += 5) {  
        $draw->setFillColor('green'); 
        $draw->rectangle($x, $y + 10, $x % 5, $y);  
    }  
}  
  
// Pop the pattern 
$draw->popPattern(); 
  
// Set the stroke pattern URL 
$draw->setStrokePatternURL('#MyPattern'); 
  
// Set the stroke width 
$draw->setStrokeWidth(10); 
  
// Draw a circle 
$draw->circle(300, 100, 350, 20); 
  
// 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.setstrokepatternurl.php
相关用法
- PHP ImagickDraw arc()用法及代码示例
 - PHP ImagickDraw pop()用法及代码示例
 - PHP ImagickDraw pathLineToHorizontalRelative()用法及代码示例
 - PHP ImagickDraw popPattern()用法及代码示例
 - PHP ImagickDraw skewX()用法及代码示例
 - PHP ImagickDraw pushPattern()用法及代码示例
 - PHP ImagickDraw rotate()用法及代码示例
 - PHP ImagickDraw getTextInterwordSpacing()用法及代码示例
 - PHP ImagickDraw setStrokeOpacity()用法及代码示例
 - PHP ImagickDraw setFillAlpha()用法及代码示例
 - PHP ImagickDraw setGravity()用法及代码示例
 - PHP ImagickDraw translate()用法及代码示例
 - PHP ImagickDraw setTextInterlineSpacing()用法及代码示例
 - PHP ImagickDraw setStrokeWidth()用法及代码示例
 - PHP ImagickDraw resetVectorGraphics()用法及代码示例
 
注:本文由纯净天空筛选整理自gurrrung大神的英文原创作品 PHP | ImagickDraw setStrokePatternURL() Function。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。
