Imagick::optimizeImageLayers

画像の繰り返し部分を削除して最適化する

説明

public bool Imagick::optimizeImageLayers()

GIF 形式の画像を、シーケンス内のひとつ前の画像と比較します。 必要最小限の画像で各フレームを置き換え、結果のアニメーションはそのままとなるようにします。 このメソッドは、ImageMagick バージョン 6.2.9 以降で Imagick をコンパイルした場合に使用可能です。

パラメータ

この関数にはパラメータはありません。

戻り値

成功した場合に true を返します。

エラー / 例外

エラー時に ImagickException をスローします。

例1 Imagick::optimizeImageLayers の使用法

GIF 画像を読み込み、最適化して書き出します。

<?php
/* 新しい imagick オブジェクトを作成します */
$im = new Imagick("test.gif");

/* 画像のレイヤを最適化します */
$im->optimizeImageLayers();

/* 画像を書き戻します */
$im->writeImages("test_optimized.gif", true);
?>

参考

  • Imagick::compareImageLayers
  • Imagick::writeImages
  • Imagick::writeImage