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:
php
<?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 image echo $image ->getImageBlob(); ?> |
Output:
Program 2:
php
<?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(); ?> |
Output: