PHP | ImagickDraw setFillRule() Function
Last Updated :
07 Mar, 2024
The ImagickDraw::setFillRule() function is an inbuilt function in PHP which is used to set the fill rule to use while drawing the polygons.
Syntax:
bool ImagickDraw::setFillRule( int $fill_rule )
Parameters: This function accepts a single parameter $fill_rule which holds an integer value corresponding to one of FILLRULE constants.
List of FILLRULE constants are given below:
- imagick::FILLRULE_UNDEFINED (0)
- imagick::FILLRULE_EVENODD (1)
- imagick::FILLRULE_NONZERO (2)
Return Value: This function returns TRUE on success.
Below programs illustrate the ImagickDraw::setFillRule() function in PHP:
Program 1:
<?php
$draw = new ImagickDraw();
$draw ->setFillRule(0);
$fillRule = $draw ->getFillRule();
echo $fillRule ;
?>
|
Output:
0 // Which corresponds to imagick::FILLRULE_UNDEFINED.
Program 2:
<?php
$imagick = new Imagick();
$imagick ->newImage(800, 250, 'black' );
$draw = new ImagickDraw();
$draw ->setFillColor( 'white' );
$draw ->setFillRule(Imagick::FILLRULE_EVENODD);
$draw ->translate(40, 50);
$draw ->pathStart();
for ( $x = 0; $x < 22; $x ++) {
if ( $x >= 11) {
$angle = fmod ( $x * 130, 360) * pi() / 180;
} else {
$angle = fmod ( $x * 98, 360) * pi() / 180;
}
$draw ->pathLineToAbsolute(150 * sin( $angle ), 150 * cos ( $angle ));
}
$imagick ->drawImage( $draw );
$imagick ->setImageFormat( 'png' );
header( "Content-Type: image/png" );
echo $imagick ->getImageBlob();
?>
|
Output:
Share your thoughts in the comments
Please Login to comment...