La función ImagickPixelIterator::__construct() es una función incorporada en PHP que se usa para crear una instancia del objeto ImagickPixelIterator. Este objeto se utiliza para iterar a través de los píxeles.
Sintaxis:
bool ImagickPixelIterator::__construct( Imagick $wand )
Parámetros: esta función acepta un solo parámetro $wand que contiene la imagen.
Valor de retorno: esta función devuelve VERDADERO en caso de éxito.
Excepciones: esta función lanza ImagickException en caso de error.
Los siguientes programas ilustran la función ImagickPixelIterator::__construct() en PHP:
Programa 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(); ?>
Producción:
Programa 2:
<?php // Create a new imagick object $imagick = new Imagick( 'https://media.geeksforgeeks.org/wp-content/uploads/geeksforgeeks-13.png'); // 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; ?>
Producción:
Total number of pixels: 122728
Referencia: https://www.php.net/manual/en/imagickpixeliterator.construct.php