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


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


ImagickDraw::scale()函数是PHP中的内置函数,用于调整缩放因子以在水平和垂直方向上应用到当前坐标空间。

用法:

bool ImagickDraw::scale( $x, $y )

参数:该函数接受上面提到并在下面描述的两个参数:


  • $x:此参数用于保存水平因子的值。
  • $y:此参数用于保存垂直系数的值。

返回值:成功时此函数返回True。

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

示例1:

<?php 
  
// require_once('path/vendor/autoload.php'); 
  
// Create an ImagickDraw object 
  
$draw = new \ImagickDraw(); 
  
// Set the Stroke Color  
$draw->setStrokeColor('Green'); 
  
// Set the Fill Color 
$draw->setFillColor('Red'); 
  
// Set the stroke width 
$draw->setStrokeWidth(7); 
  
// Draw the rectangle 
$draw->rectangle(40, 30, 200, 260); 
  
// Set the scale 
$draw->scale(1.4, 1.4); 
  
// Set the fill color 
$draw->setFillColor('lightgreen'); 
  
// Draw the rectangle 
$draw->rectangle(40, 30, 200, 260); 
  
// Create an Imagick object  
$image = new \Imagick(); 
  
// Set the image dimensions 
$image->newImage(800, 400, 'White'); 
  
// Set the image format 
$image->setImageFormat("png"); 
  
// Draw the image 
$image->drawImage($draw); 
header("Content-Type: image/png"); 
  
// Display teh iamge  
echo $image->getImageBlob(); 
?>

输出:

示例2:

<?php 
  
// require_once('path/vendor/autoload.php'); 
  
// Create an Imagick Draw object 
$draw = new \ImagickDraw(); 
  
// Set the stroke color 
$strokeColor = new \ImagickPixel('Green'); 
  
// Set the fill color 
$fillColor = new \ImagickPixel('Red'); 
  
// Set the stroke opacity 
$draw->setStrokeOpacity(1); 
  
// Set the stroke color 
$draw->setStrokeColor('Green'); 
  
// Set the Fill Color 
$draw->setFillColor('Red'); 
  
// Set the stroke width 
$draw->setStrokeWidth(2); 
  
$smoothPointsSet = [ 
        [ 
            ['x' => 10.0 * 5, 'y' => 10.0 * 5], 
            ['x' => 30.0 * 5, 'y' => 90.0 * 5], 
            ['x' => 25.0 * 5, 'y' => 10.0 * 5], 
            ['x' => 50.0 * 5, 'y' => 50.0 * 5], 
        ] 
    ]; 
  
foreach ($smoothPointsSet as $points) { 
    $draw->bezier($points); 
} 
  
// Set the stroke color 
$draw->setStrokeColor('black'); 
  
// Set the fill color 
$draw->setFillColor('lightgreen'); 
  
// Set the scale 
$draw->scale(1.5, 1.5); 
  
    foreach ($smoothPointsSet as $points) { 
        $draw->bezier($points); 
    } 
  
// Create an imagick object 
$imagick = new \Imagick(); 
  
// Set the image dimensions 
$imagick->newImage(400, 500, 'White'); 
  
// Set the image format 
$imagick->setImageFormat("png"); 
  
// Draw the image 
$imagick->drawImage($draw); 
header("Content-Type: image/png"); 
  
// Display the image 
echo $imagick->getImageBlob(); 
?>

输出:

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



相关用法


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