This function returns true on success but setting the iterator to an invalid index throws an exception instead of returning false:
Fatal error: Uncaught exception 'ImagickException' with message 'Unable to set iterator index'
This can happen when counting images inside a gif file, because the iterator count starts at zero and not one. If you count the number of images in a gif file be sure to use iterator 0 for the first image, like this:
<?php
$image = new Imagick('simple.gif');
$image->setIteratorIndex(0);
?>
Imagick::setIteratorIndex
(PECL imagick 2.0.0)
Imagick::setIteratorIndex — Establece la posición del iterador
Descripción
bool Imagick::setIteratorIndex
( int
$index
)Establece el iterador a la posición en la lista de imágenes definida por el parámtro index. Este método está disponible si Imagick ha sido compilado con la versión 6.2.9 (o superior) de ImageMagick.
Parámetros
-
index -
La posición donde se va a establecer el iterador
Valores devueltos
Devuelve TRUE en caso de éxito.
Ejemplos
Ejemplo #1 Usar Imagick::setIteratorIndex():
Crear imágenes, establecer y obtener el índice del iterador
<?php
$im = new Imagick();
$im->newImage(100, 100, new ImagickPixel("red"));
$im->newImage(100, 100, new ImagickPixel("green"));
$im->newImage(100, 100, new ImagickPixel("blue"));
$im->setIteratorIndex(1);
echo $im->getIteratorIndex();
?>
Ver también
- Imagick::getIteratorIndex() - Obtiene el índice de la imagen activa actual
- Imagick::getImageIndex() - Obtiene el índice de la imagen activa actual
- Imagick::setImageIndex() - Establece la posición del iterador
wilcobeekhuizen at gmail dot com ¶
2 years ago
