In imagick 3.x (have not checked 2.x), this returns an imagemagick object and not a boolean.
<?php
$image = new Imagick('myanimation.gif');
$image = $image->optimizeImageLayers(); //Does not return a boolean!
$image->writeImage('optimized.gif');
(PECL imagick 2, PECL imagick 3)
Imagick::optimizeImageLayers — En iyilemek amacıyla görüntülerin tekrarlanan bölümlerini siler
Bir hareketli GIF görüntüde, canlandırma sonuçlarını koruyarak her görüntüyü önceki görüntü ile karşılaştırıp kırpılacak en küçük görüntü karesini seçmeye çalışır. Bu yöntem, derleme sırasında ImageMagick kütüphanesinin 6.2.9 veya sonraki bir sürümü kuruluysa kullanılabilir.
Bu işlevin bağımsız değişkeni yoktur.
Başarı durumunda true
döner.
Hata durumunda bir ImagickException istisnası oluşur.
Örnek 1 - Imagick::optimizeImageLayers() örneği
Bir GIF görüntüyü okur, en iyiler ve yazar.
<?php
/* Yeni bir imagick nesnesi oluştur */
$im = new Imagick("test.gif");
/* Görüntü katmanlarını en iyile */
$im->optimizeImageLayers();
/* Elde edilen görüntüyü dosyaya yaz */
$im->writeImages("test_optimized.gif", true);
?>
In imagick 3.x (have not checked 2.x), this returns an imagemagick object and not a boolean.
<?php
$image = new Imagick('myanimation.gif');
$image = $image->optimizeImageLayers(); //Does not return a boolean!
$image->writeImage('optimized.gif');