IMAGICK.SETIMAGEDELAY(3) 1 IMAGICK.SETIMAGEDELAY(3)
Imagick::setImageDelay - Sets the image delay
SYNOPSIS
bool Imagick::setImageDelay (int $delay)
DESCRIPTION
Sets the image delay. For an animated image this is the amount of time that this frame of the image should be displayed for, before dis-
playing the next frame.
The delay can be set individually for each frame in an image.
PARAMETERS
o $delay
- The amount of time expressed in 'ticks' that the image should be displayed for. For animated GIFs there are 100 ticks per sec-
ond, so a value of 20 would be 20/100 of a second aka 1/5th of a second.
RETURN VALUES
Returns TRUE on success.
ERRORS
/EXCEPTIONS
Throws ImagickException on error.
EXAMPLES
Example #1
Modify animated Gif with Imagick.setImageDelay(3)
<?php
// Modify an animated Gif so that it's frames are played at a variable speed,
// varying between being shown for 50ms down to 0ms, which will cause the frame
// to be skipped in most browsers.
$imagick = new Imagick(realpath("Test.gif"));
$imagick = $imagick->coalesceImages();
$frameCount = 0;
foreach ($imagick as $frame) {
$imagick->setImageDelay((($frameCount % 11) * 5));
$frameCount++;
}
$imagick = $imagick->deconstructImages();
$imagick->writeImages("/path/to/save/output.gif", true);
?>
PHP Documentation Group IMAGICK.SETIMAGEDELAY(3)