PHP ImageMagick的GIF调整保持动画 [英] php ImageMagick gif resize keep animation

查看:361
本文介绍了PHP ImageMagick的GIF调整保持动画的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

上传后,GIF的大小,但动画都将丢失。我在做什么错了?

 尝试
{
   $ =动画新Imagick($这个 - > IMAGE_FILENAME);   的foreach($动画作为$帧)
   {
      $框架> thumbnailImage($宽度,高度$);
      $框架> setImagePage($宽度,$高度,0,0);
   }   $ animation-> writeImages($这个 - > IMAGE_FILENAME,真正的);   回声&下; IMG SRC =$这 - 方式> IMAGE_FILENAME。'/>中;   $这个 - >图像= imagecreatefromgif($这个 - > IMAGE_FILENAME);
}
赶上(例外$ E){回声$ E->的getMessage(); }

没有异常捕获。

 阵列

    [的versionNumber] => 1608
    [VERSIONSTRING] => ImageMagick的6.4.8 2011-03-20 Q16的OpenMP http://www.imagemagick.org


解决方案

试试这个:的 http://www.php.net/manual/en/imagick.coalesceimages.php

第一个评论好像什么ü需要。
和U不应该混GD2库(imagecreatefromgif),并Imagick。

After upload, the gif is resized but the animation is lost. What am I doing wrong?

try
{
   $animation = new Imagick($this->image_filename);

   foreach ($animation as $frame)
   {
      $frame->thumbnailImage($width, $height);
      $frame->setImagePage($width, $height, 0, 0);
   }

   $animation->writeImages($this->image_filename, true);

   echo "<img src='".$this->image_filename."' />";

   $this->image = imagecreatefromgif($this->image_filename);
}
catch(Exception $e){ echo $e->getMessage(); }

No exception caught.

Array
(
    [versionNumber] => 1608
    [versionString] => ImageMagick 6.4.8 2011-03-20 Q16 OpenMP http://www.imagemagick.org
)

解决方案

Try this: http://www.php.net/manual/en/imagick.coalesceimages.php
The first comment seems like what u need. And u should never mix GD2 library ("imagecreatefromgif") and Imagick.

这篇关于PHP ImageMagick的GIF调整保持动画的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆