2012-09-14 149 views
5

我按照Resize GIF animation, pil/imagemagick, python的步驟使用PILimage2gif調整圖像大小。不過,我得到了像下面衝了出去調整大小後的GIF:使用PIL調整動畫gif的Python大小

enter image description here

我該如何解決這個問題?

+0

一個由誰回答您引用的問題是,這人提到的事他/他無法想出一個保持透明度的方法。我認爲這可能是問題,因爲它主要是有這個「被淘汰」問題的背景。如圖所示,這將導致框架之間缺乏透明度,並導致背景破裂。 – Collin

+0

類似的問題在http://stackoverflow.com/questions/9128811/how-do-you-scale-an-animated-gif-image-in-pil-and-preserve-the-animation?rq=1 – hllau

+2

一些令人驚歎的人提出了更新版本的images2gif.py,它在修復透明度問題方面做得相當不錯(儘管還有一些工件):https://bitbucket.org/bench/images2gif.py/overview – Coconut

回答

0

我沒有試過,但this暗示的方式來與PIL GIF圖像保持透明度時節省:

im = Image.open(...) 
transparency = im.info["transparency"] 
... 
out.save("out.gif", transparency=transparency) 
+0

謝謝,但它似乎不起作用,因爲'.save'方法根本不用。 'image2gif.writeGif()'不公開透明度參數。 參考http://stackoverflow.com/questions/9988517/resize-gif-animation-pil-imagemagick-python?rq=1,我們使用模塊'images2gif'來生成GIF流。它包裹了PIL圖像的轉換。這並不容易理解。 – hllau

+0

我很抱歉聽到它。不幸的是,我對PIL的經驗也很有限,所以我們希望有人提交一個替代選項。 – Collin