Open In App

PHP | ImagickPixelIterator __construct() function

Last Updated : 02 Jan, 2020
Improve
Improve
Like Article
Like
Save
Share
Report

The ImagickPixelIterator::__construct() function is an inbuilt function in PHP which is used create a instance of ImagickPixelIterator object. This object is used to iterate through the pixels.

Syntax:

bool ImagickPixelIterator::__construct( Imagick $wand )

Parameters:This function accepts a single parameter $wand which holds the image.

Return Value: This function returns TRUE on success.

Exceptions: This function throws ImagickException on error.

Below given programs illustrate the ImagickPixelIterator::__construct() function in PHP:
Program 1:




<?php
// Create a new imagick object
$imagick = new Imagick();
   
// Create a image on imagick object
$imagick->newImage(800, 250, 'black');
  
// Create a new imagickPixelIterator object
$imageIterator = new ImagickPixelIterator($imagick);
   
// Loop through pixel rows
foreach ($imageIterator as $row => $pixels) {
   
    foreach ($pixels as $column => $pixel) {
        // Set the color of each pixel to blue
        $pixel->setColor('blue');
    }
   
    // Sync the iterator after each iteration
    $imageIterator->syncIterator();
}
  
// Show the output
$imagick->setImageFormat('png');
header("Content-Type: image/png");
echo $imagick->getImageBlob();
?>


Output:

Program 2:




<?php
// Create a new imagick object
$imagick = new Imagick(
  
// Create a new imagickPixelIterator object
$imageIterator = new ImagickPixelIterator($imagick);
  
$i = 0;
  
// Loop through pixel rows
foreach ($imageIterator as $row => $pixels) {
  
    foreach ($pixels as $column => $pixel) {
        $i++;
    }
  
    // Sync the iterator after each iteration
    $imageIterator->syncIterator();
}
  
echo 'Total number of pixels: ' . $i;
?>


Output:

Total number of pixels: 122728

Reference: https://www.php.net/manual/en/imagickpixeliterator.construct.php



Like Article
Suggest improvement
Previous
Next
Share your thoughts in the comments

Similar Reads