ImagickPixelIterator::resetIterator

(PECL imagick 2, PECL imagick 3)

ImagickPixelIterator::resetIteratorСбрасывает итератор пикселей

Описание

public function ImagickPixelIterator::resetIterator(): bool
Внимание

Функцию пока не задокументировали; для знакомства доступен только список аргументов.

Сбрасывает итератор пикселей. Используйте совместно с ImagickPixelIterator::getNextIteratorRow() для перебора всех пикселей в контейнере пикселей.

Возвращаемые значения

Функция в случае успешной работы возвращает true.

Примеры

Пример #1 Пример использования ImagickPixelIterator::resetIterator()

<?php
function resetIterator($imagePath) {

    $imagick = new \Imagick(realpath($imagePath));

    $imageIterator = $imagick->getPixelIterator();

    /* Походим по строкам пикселей */
    foreach ($imageIterator as $pixels) {
        /* Походим по пикселям в строке (столбцы) */
        foreach ($pixels as $column => $pixel) {
            /** @var $pixel \ImagickPixel */
            if ($column % 2) {

                /* Делаем каждый второй пиксель на 25% красным*/
                $pixel->setColorValue(\Imagick::COLOR_RED, 64);
            }
        }
        /* Синхронизируем итератор. Это необходимо для делать на каждой итерации */
        $imageIterator->syncIterator();
    }

    $imageIterator->resetiterator();

    /* Походим по строкам пикселей */
    foreach ($imageIterator as $pixels) {
        /* Походим по пикселям в строке (столбцы) */
        foreach ($pixels as $column => $pixel) {
            /** @var $pixel \ImagickPixel */
            if ($column % 3) {
                $pixel->setColorValue(\Imagick::COLOR_BLUE, 64); /* Делаем каждый второй пиксель немного синим*/
                //$pixel->setColor("rgba(0, 0, 128, 0)"); /* Paint every second pixel black*/
            }
        }
        $imageIterator->syncIterator(); /* Синхронизируем итератор. Это необходимо для делать на каждой итерации */
    }

    $imageIterator->clear();

    header("Content-Type: image/jpg");
    echo $imagick;
}

?>

Добавить

Примечания пользователей

Пользователи ещё не добавляли примечания для страницы
To Top