PHP | ImagickPixelIterator setIteratorRow()函数
ImagickPixelIterator::setIteratorRow()函数是PHP中的一个内置函数,用于设置像素迭代器行。该函数用于移动到当前图像像素中的任意行。
句法:
bool ImagickPixelIterator::setIteratorRow( int $row )
参数:此函数接受一个包含行号的参数$row 。
返回值:此函数在成功时返回 TRUE。
异常:此函数在出错时抛出 ImagickException。
下面给出的程序说明了PHP中的ImagickPixelIterator::setIteratorRow()函数:
方案一:
getPixelIterator();
// Set the pixel iterator to 50
$pixelIterator->setIteratorRow(50);
// Get the current iterator row
echo "Current row is " . $pixelIterator->getIteratorRow();
?>
输出:
Current row is 50
方案二:
newImage(800, 250, 'black');
$imageIterator = $imagick->getPixelIterator();
$x = 0;
while ($x < 250) {
// Set the iterator row
$imageIterator->setIteratorRow($x);
// Get the current row
$pixels = $imageIterator->getCurrentIteratorRow();
foreach ($pixels as $pixel) {
if ($x % 2) {
// Set the color of pixel
$pixel->setColor('white');
} else {
// Set the color of pixel
$pixel->setColor('red');
}
}
// Sync the iterator
$imageIterator->syncIterator();
// Give a gap of 4 pixels between lines
$x = $x + 5;
}
// Show the output
$imagick->setImageFormat('png');
header("Content-Type: image/png");
echo $imagick->getImageBlob();
?>
输出:
参考: https://www. PHP.net/manual/en/imagickpixeliterator.setiteratorrow。 PHP