PHP | ImagickPixelIterator getCurrentIteratorRow() function

Last Updated : 02 Jan, 2020
Comments
Improve
Suggest changes
Like Article
Like
Report
The ImagickPixelIterator::getCurrentIteratorRow() function is an inbuilt function in PHP which is used to get the current row as an array of ImagickPixel objects from the pixel iterator. Syntax:
array ImagickPixelIterator::getCurrentIteratorRow( void )
Parameters:This function doesn’t accept any parameter. Return Value: This function returns an array value containing the ImagickPixel objects that can themselves be iterated. Exceptions: This function throws ImagickException on error. Below given programs illustrate the ImagickPixelIterator::getCurrentIteratorRow() function in PHP: Program 1 (Get first five pixels of first row): php
<?php
// Create a new imagick object
$imagick = new Imagick();
 
// Create a image on imagick object with 
// 5 pixels on row and 10 pixels on columns
$imagick->newImage(5, 10, 'black');

// Get the pixel iterator
$pixelIterator = $imagick->getPixelIterator();

// Get the current iterator row
$row = $pixelIterator->getCurrentIteratorRow();
print("<pre>".print_r($row, true)."</pre>");
?>
Output:
Array
(
    [0] => ImagickPixel Object
        (
        )

    [1] => ImagickPixel Object
        (
        )

    [2] => ImagickPixel Object
        (
        )

    [3] => ImagickPixel Object
        (
        )

    [4] => ImagickPixel Object
        (
        )

)
Program 2 (Get the color of first five pixels of first row): php
<?php
// Create a new imagick object
$imagick = new Imagick(
    'https://media.geeksforgeeks.org/wp-content/uploads/geeksforgeeks-13.png');

// Get the pixel iterator
$pixelIterator = $imagick->getPixelIterator();

// Get the current iterator row
$row = $pixelIterator->getCurrentIteratorRow();
echo "First five colors of pixels are:<br>";
print("Pixel 1:" . "<pre>".print_r($row[0]->getColor(), true)."</pre>");
print("Pixel 2:" . "<pre>".print_r($row[1]->getColor(), true)."</pre>");
print("Pixel 3:" . "<pre>".print_r($row[2]->getColor(), true)."</pre>");
print("Pixel 4:" . "<pre>".print_r($row[3]->getColor(), true)."</pre>");
print("Pixel 5:" . "<pre>".print_r($row[4]->getColor(), true)."</pre>");
?>
Output:
First five colors of pixels are:
Pixel 1:
Array
(
    [r] => 255
    [g] => 255
    [b] => 255
    [a] => 1
)
Pixel 2:
Array
(
    [r] => 255
    [g] => 255
    [b] => 255
    [a] => 1
)
Pixel 3:
Array
(
    [r] => 255
    [g] => 255
    [b] => 255
    [a] => 1
)
Pixel 4:
Array
(
    [r] => 255
    [g] => 255
    [b] => 255
    [a] => 1
)
Pixel 5:
Array
(
    [r] => 255
    [g] => 255
    [b] => 255
    [a] => 1
)
Reference: https://www.php.net/manual/en/imagickpixeliterator.getcurrentiteratorrow.php

Next Article

Similar Reads