📅  最后修改于: 2023-12-03 15:03:38.685000             🧑  作者: Mango
newPixelRegionIterator()
函数是 imagickpixeliterator 类的一个成员方法。该函数用于在像素区域上创建一个新的像素迭代器。
public ImagickPixelIterator ImagickPixelIterator::newPixelRegionIterator(Imagick $wand , int $x , int $y , int $columns , int $rows)
参数
$wand
:Imagick 对象$x
:起始点的 x 坐标$y
:起始点的 y 坐标$columns
:需要迭代的列数$rows
:需要迭代的行数返回值
返回一个新的 imagickpixeliterator 对象。
<?php
// 创建 imagickpixeliterator 对象
$iterator = new ImagickPixelIterator($image);
// 在区域(10,10)到(20,20)上创建一个新的迭代器
$newIterator = $iterator->newPixelRegionIterator($image, 10, 10, 10, 10);
// 遍历像素
foreach ($newIterator as $row => $pixels) {
foreach ($pixels as $pixel) {
// 处理像素
}
}
?>
<?php
$image = new Imagick();
$image->readImage('image.png');
// 获取图像大小
$width = $image->getImageWidth();
$height = $image->getImageHeight();
// 创建 imagickpixeliterator 对象
$iterator = new ImagickPixelIterator($image);
// 在整个图像区域上创建一个新的迭代器
$newIterator = $iterator->newPixelRegionIterator($image, 0, 0, $width, $height);
// 遍历像素
foreach ($newIterator as $row => $pixels) {
foreach ($pixels as $pixel) {
// 处理像素
}
}
?>