La función Imagick::writeImages() es una función incorporada en PHP que se utiliza para escribir una imagen o secuencia de imágenes en el nombre de archivo especificado. Esta función guarda el archivo de imagen en la misma carpeta donde se encuentra su script PHP. Esta función admite animaciones GIF, mientras que writeImage() no lo admite.
Sintaxis:
bool Imagick::writeImages( string $filename, bool $adjoin )
Parámetros: esta función acepta dos parámetros, como se mencionó anteriormente y se describe a continuación:
- $filename: Especifica el nombre del archivo.
- $adjoin: especifica si agregar o no adjoin. Si es VERDADERO, guarda la animación como un solo archivo gif, mientras que en caso de FALSO, todos los fotogramas de la animación se guardan como archivos separados.
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 Imagick::writeImages() en PHP:
Programa 1:
<?php // Create a new imagick object $imagickAnimation = new Imagick( 'https://media.geeksforgeeks.org/wp-content/uploads/20191117145951/g4gnaimation1.gif'); // Write that animation with name 'myanimation.gif' $imagickAnimation->writeImages('myanimation.gif', true); ?>
Salida:
Esto guardará una imagen GIF con el nombre myanimation.gif en la misma carpeta.
Programa 2:
<?php // Create a new imagick object $imagickAnimation = new Imagick( 'https://media.geeksforgeeks.org/wp-content/uploads/20191117194549/g4ganimatedcolor.gif'); // Write that animation with name 'myanimation2.gif' $imagickAnimation->writeImages('myanimation2.gif', false); ?>
Producción:
This will save 16 images all from different frames of given animation file with filenames as:
- mianimacion2-0.gif
- mianimacion2-1.gif
- mianimacion2-2.gif
- mianimacion2-3.gif
- mianimacion2-4.gif
- mianimacion2-5.gif
- mianimacion2-6.gif
- mianimacion2-7.gif
- mianimacion2-8.gif
- mianimacion2-9.gif
- mianimacion2-10.gif
- mianimacion2-11.gif
- mianimacion2-12.gif
- mianimacion2-13.gif
- mianimacion2-14.gif
- mianimacion2-15.gif
Referencia: https://www.php.net/manual/en/imagick.writeimages.php