Sunday, January 18, 2026
HomeLanguagesPHP | ImagickDraw setFillRule() Function

PHP | ImagickDraw setFillRule() Function

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
  
// Create a new ImagickDraw object
$draw = new ImagickDraw();
  
// Set the Fill Rule
$draw->setFillRule(0);
  
// Get the Fill Rule
$fillRule = $draw->getFillRule();
echo $fillRule;
?>


Output:

0 // Which corresponds to imagick::FILLRULE_UNDEFINED.

Program 2:




<?php
  
// Create a new imagick object
$imagick = new Imagick();
  
// Create a image on imagick object
$imagick->newImage(800, 250, 'black');
  
// Create a new ImagickDraw object
$draw = new ImagickDraw();
  
// Set the Fill Color
$draw->setFillColor('white');
  
// Set the Fill Rule
$draw->setFillRule(Imagick::FILLRULE_EVENODD);
  
// Translate the drawing
$draw->translate(40, 50);
  
// Start the path and draw pathlines
$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));
}
  
// Render the draw commands
$imagick->drawImage($draw);
  
// Show the output
$imagick->setImageFormat('png');
header("Content-Type: image/png");
echo $imagick->getImageBlob();
?>


Output:

Reference: https://www.php.net/manual/en/imagickdraw.setfillrule.php

Whether you’re preparing for your first job interview or aiming to upskill in this ever-evolving tech landscape, neveropen Courses are your key to success. We provide top-quality content at affordable prices, all geared towards accelerating your growth in a time-bound manner. Join the millions we’ve already empowered, and we’re here to do the same for you. Don’t miss out – check it out now!
RELATED ARTICLES

Most Popular

Dominic
32474 POSTS0 COMMENTS
Milvus
118 POSTS0 COMMENTS
Nango Kala
6846 POSTS0 COMMENTS
Nicole Veronica
11977 POSTS0 COMMENTS
Nokonwaba Nkukhwana
12063 POSTS0 COMMENTS
Shaida Kate Naidoo
6985 POSTS0 COMMENTS
Ted Musemwa
7219 POSTS0 COMMENTS
Thapelo Manthata
6933 POSTS0 COMMENTS
Umr Jansen
6911 POSTS0 COMMENTS