PHP | GmagickDraw scale() Function

The GmagickDraw::scale() function is an inbuilt function in PHP which is used to set the scaling factor and apply it to the horizontal and vertical directions to the current coordinate space.

Syntax:

public GmagickDraw::scale( $x, $y ) : GmagickDraw

Parameters: This function accepts two parameter as mentioned above and described below:

  • $x: This parameter is used to hold the value of horizontal factor.
  • $y: This parameter is used to hold the value of vertical factor.

Return Value: This function returns GmagickDraw object on success.

Below programs illustrate the GmagickDraw::scale() function in PHP:

Program 1:

filter_none

edit
close

play_arrow

link
brightness_4
code

<?php
  
// require_once('path/vendor/autoload.php');
  
// Create a GmagickDraw object
  
$draw = new \GmagickDraw ();
  
// 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 Gmagick object 
$image = new \Gmagick();
  
// 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 the iamge 
echo $image->getImageBlob();
?>

chevron_right


Output:

Program 2:

filter_none

edit
close

play_arrow

link
brightness_4
code

<?php
  
// require_once('path/vendor/autoload.php');
  
// Create an Gmagick Draw object
$draw = new \GmagickDraw();
  
// Set the stroke color
$strokeColor = new \GmagickPixel('Green');
  
// Set the fill color
$fillColor = new \GmagickPixel('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 gmagick object
$gmagick = new \Gmagick();
  
// Set the image dimensions
$gmagick ->newImage(400, 500, 'White');
  
// Set the image format
$gmagick ->setImageFormat("png");
  
// Draw the image
$gmagick ->drawImage($draw);
header("Content-Type: image/png");
  
// Display the image
echo $gmagick ->getImageBlob();
?>

chevron_right


Output:

Reference: http://php.net/manual/en/gmagickdraw.scale.php



My Personal Notes arrow_drop_up

Check out this Author's contributed articles.

If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.

Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.



Improved By : nidhi_biet