PHP 8.3.4 Released!

Imagick::setImageDelay

(PECL imagick 2, PECL imagick 3)

Imagick::setImageDelayConfigure le délai de l'image

Description

public Imagick::setImageDelay(int $delay): bool

Configure le délai de l'image. Pour une image animée, ce sera le temps pendant lequel la frame sera affichée, avant d'afficher la frame suivante.

Le délai peut être défini individuellement pour chaqur frame de l'image.

Liste de paramètres

delay

Le temps, exprimé en 'ticks', pendant lequel l'image sera affichée. Pour les GIFs animés, il y a 100 ticks par seconde, aussi, une valeur de 20 vaudra 20/100 d'une seconde, soit 1/5ème de seconde.

Valeurs de retour

Retourne true en cas de succès.

Erreurs / Exceptions

Lance une exception ImagickException si une erreur survient.

Exemples

Exemple #1 Modification d'un GIF animé avec Imagick::setImageDelay()

<?php

// Modifie un GIF animé permettant d'afficher les frames avec une vitesse variable,
// allant de 50ms à 0ms, ce qui fera que la frame ne sera pas affichée dans
// la plupart des navigateurs.
$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("/chemin/de/sauvegarde/output.gif", true);

?>

add a note

User Contributed Notes 1 note

up
-2
fortruth at mabang dot net
13 years ago
the delay time unit is micro-second when 100 is 1s
To Top