English | 简体中文 | 繁體中文
查询

Imagick::animateImages()函数—用法及示例

「 按照指定的延迟时间和循环次数创建一个动画 」


函数名称:Imagick::animateImages()

适用版本:Imagick 3.4.4以上版本

用法:该函数用于按照指定的延迟时间和循环次数创建一个动画。

语法:public Imagick::animateImages(float $frameDelay)

参数:

  • $frameDelay:每个帧之间的延迟时间,以秒为单位。可以是小数,表示毫秒级别的延迟。

返回值:成功返回 true,失败返回 false。

示例:

// 创建一个新的 Imagick 对象
$imagick = new Imagick();

// 添加需要作为帧的图片
$imagick->readImage('frame1.png');
$imagick->readImage('frame2.png');
$imagick->readImage('frame3.png');

// 设置每个帧之间的延迟时间为0.5秒
$frameDelay = 0.5;

// 创建动画
$imagick->animateImages($frameDelay);

// 保存动画为 GIF 格式
$imagick->writeImages('animation.gif', true);

// 销毁对象
$imagick->clear();
$imagick->destroy();

注意事项:

  • 在调用 animateImages() 之前,需要先使用 readImage() 方法将需要作为帧的图片添加到 Imagick 对象中。
  • 在调用 writeImages() 方法保存动画之前,必须先调用 animateImages() 方法创建动画。
  • 该函数需要 Imagick 3.4.4 或更高版本的支持。在较低版本的 Imagick 中,可以考虑使用 Imagick::coalesceImages() 方法和 Imagick::writeImages() 方法来手动创建动画。
补充纠错
热门PHP函数
分享链接