有大量关于裁剪图像的信息,但尝试裁剪(或修剪)动画会产生奇怪的结果。有时它们闪烁,或带有额外的帧,或者某些帧正确裁剪而其他帧变得偏移。如何防止这一切发生?
答案 0 :(得分:74)
convert input.gif -coalesce -repage 0x0 -crop WxH+X+Y +repage output.gif
-coalesce
重建完整的框架。-repage 0x0
重置该信息。+repage
将执行此操作。答案 1 :(得分:33)
即使有了合并和重复,我也无法让ImageMagick很好地裁剪和调整GIF动画。
我找到了一个名为Gifsicle的程序,它非常适合处理GIF动画。
gifsicle --crop 0,0-100,100 --output out.gif in.gif
它还可以执行各种其他操作。看看吧!
答案 2 :(得分:0)
答案 3 :(得分:0)
动画经常被优化,这意味着某些帧比其他帧小。因此,在ImageMagick中,您可能希望在裁剪之前合并动画。
convert in_animation.gif -coalesce -crop WxH+X+Y +repage -layers optimize out_animation.gif
在读取输入动画之前,您可能需要添加-dispose方法以避免闪烁。如果要进行更改,还要在末尾设置-delay和-loop。
见
http://www.imagemagick.org/Usage/anim_basics/#dispose http://www.imagemagick.org/Usage/anim_basics/#coalesce http://www.imagemagick.org/script/command-line-options.php#layers