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


PHP GmagickDraw bezier()用法及代碼示例


GmagickDraw::bezier()函數是PHP中的一個內置函數,用於繪製貝塞爾曲線。

用法:

GmagickDraw GmagickDraw::bezier( array $coordinate_array )

參數:該函數接受單個參數$coordinate_array,該參數保存多維數組,該多維數組采用要通過其繪製曲線的點。


返回值:成功時,此函數返回GmagickDraw對象。

異常:該函數在錯誤時引發GmagickDrawException。
使用的圖片:捕獲畫布區域。

下麵給出的程序說明了PHP中的GmagickDraw::bezier()函數:

程序1:簡單貝塞爾曲線

<?php 
  
// Create a new Gmagick object 
$gmagick = new Gmagick('geeksforgeeks.png'); 
  
// Create a GmagickDraw object 
$draw = new GmagickDraw(); 
  
// Set the color 
$draw->setFillColor('#0E0E0E'); 
  
// Function to draw rectangle 
$draw->rectangle(-10, -10, 800, 400); 
  
// Set the fill color 
$draw->setFillColor('#3D99D4'); 
  
// Set the stroke width 
$draw->setStrokeWidth(5); 
  
// Draw the curve 
$draw->bezier([ 
    ['x' => 10, 'y' => 10], 
    ['x' => 0, 'y' => 0], 
    ['x' => 620, 'y' => 0], 
    ['x' => 550, 'y' => 170], 
]); 
  
// Use of drawimage function 
$gmagick->drawImage($draw); 
  
// Display the output image 
header("Content-Type:image/png"); 
echo $gmagick->getImageBlob(); 
?>

輸出:

程序2:帶有筆觸和填充的貝塞爾曲線

<?php 
  
// Create a new Gmagick object 
$gmagick = new Gmagick('geeksforgeeks.png'); 
  
// Create a GmagickDraw object 
$draw = new GmagickDraw(); 
  
// Set the color 
$draw->setFillColor('#0E0E0E'); 
  
// Function to draw rectangle 
$draw->rectangle(-10, -10, 800, 400); 
  
// Set the fill color 
$draw->setFillColor('yellow'); 
  
// Set the stroke color 
$draw->setstrokecolor('purple'); 
  
// Set the stroke width 
$draw->setStrokeWidth(5); 
  
// Draw the curve 
$draw->bezier([ 
    ['x' => 10, 'y' => 10], 
    ['x' => 0, 'y' => 150], 
    ['x' => 620, 'y' => 0], 
    ['x' => 550, 'y' => 170], 
]); 
  
// Use of drawimage function 
$gmagick->drawImage($draw); 
  
// Display the output image 
header("Content-Type:image/png"); 
echo $gmagick->getImageBlob(); 
?>

輸出:

參考: https://www.php.net/manual/en/gmagickdraw.bezier.php



相關用法


注:本文由純淨天空篩選整理自gurrrung大神的英文原創作品 PHP | GmagickDraw bezier() Function。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。