2012-06-21 81 views
1

我需要將一些jpg幀轉換爲高質量的gif。我知道關於imagick,但它花費很多,並使用大量的資源。它的gifsicle的快速方式,但它只支持256種顏色。將jpg幀合併爲高質量的gif

我知道gif支持265種顏色,但imagick使用colormaps(我認爲)並且提供比gifscile更高的質量。

順便說一下,它還需要支持自定義幀動畫延遲。

對於imagick我使用:

convert -loop 0 -resize 400x337 -quality 100% *.jpg result.gif 

大約有24幀,約700KB

+0

你發佈的例子是使用Imagemagick命令行,你想使用內置於PHP的Imagick?在過去幾周裏有一篇關於使用Imagick的不同圖像的不同幀延遲的文章,它還沒有回覆,因此可能無法使用。 – Bonzo

+0

@Bonzo - 我對命令行感興趣,而不是php :) – keepwalking

+0

對不起,但你提到了Imagick,它是一個Imagemagick的PHP API。無論如何,我沒有任何與GIF動畫有關的事情,但你可以在這裏找到一些有用的信息:http://www.imagemagick.org/Usage/anim_basics/#gif_anim另外還有兩個關於動畫的頁面。 – Bonzo

回答

0

每一幀對於真正的高品質有gifski encoder,它結合了框架,以實現每幀超過256種顏色。然而,它並不像gifsicle那樣快,它只支持PNG幀,而不支持JPEG(JPEG對於GIF輸入來說是一個非常糟糕的主意,因爲壓縮僞像會爲圖像添加大量浪費的顏色)。