函數(shù)名稱(chēng):Imagick::animateImages()
適用版本:Imagick 3.4.4以上版本
用法:該函數(shù)用于按照指定的延遲時(shí)間和循環(huán)次數(shù)創(chuàng)建一個(gè)動(dòng)畫(huà)。
語(yǔ)法:public Imagick::animateImages(float $frameDelay)
參數(shù):
- $frameDelay:每個(gè)幀之間的延遲時(shí)間,以秒為單位??梢允切?shù),表示毫秒級(jí)別的延遲。
返回值:成功返回 true,失敗返回 false。
示例:
// 創(chuàng)建一個(gè)新的 Imagick 對(duì)象
$imagick = new Imagick();
// 添加需要作為幀的圖片
$imagick->readImage('frame1.png');
$imagick->readImage('frame2.png');
$imagick->readImage('frame3.png');
// 設(shè)置每個(gè)幀之間的延遲時(shí)間為0.5秒
$frameDelay = 0.5;
// 創(chuàng)建動(dòng)畫(huà)
$imagick->animateImages($frameDelay);
// 保存動(dòng)畫(huà)為 GIF 格式
$imagick->writeImages('animation.gif', true);
// 銷(xiāo)毀對(duì)象
$imagick->clear();
$imagick->destroy();
注意事項(xiàng):
- 在調(diào)用
animateImages()
之前,需要先使用readImage()
方法將需要作為幀的圖片添加到 Imagick 對(duì)象中。 - 在調(diào)用
writeImages()
方法保存動(dòng)畫(huà)之前,必須先調(diào)用animateImages()
方法創(chuàng)建動(dòng)畫(huà)。 - 該函數(shù)需要 Imagick 3.4.4 或更高版本的支持。在較低版本的 Imagick 中,可以考慮使用
Imagick::coalesceImages()
方法和Imagick::writeImages()
方法來(lái)手動(dòng)創(chuàng)建動(dòng)畫(huà)。