2011-05-16 69 views
1

我想用.NET創建一個多幀gif來獲得比單個文件中保存每個圖像更多的壓縮。用.NET中的gobal顏色表創建一個多幀gif

我的做法是使用GifBitmapEncoder從WPF PresentationCore這樣的:

GifBitmapEncoder e = new GifBitmapEncoder(); 
e.Frames.Add(frame1); 
e.Frames.Add(frame2); 
... 
e.Save(myStream); 

這樣做的結果是正確的多幀GIF,但大小几乎相同保存單個文件。我想原因是GifBitmapEncoder使用每個幀的本地顏色表而不是全局顏色表。

有誰知道是否有可能爲GifBitmapEncoder中的所有幀設置全局顏色表,還是有免費的.NET庫可以做到這一點?

回答

0

你有沒有想過創建一個spr的PNG呢?爲此,您將所有圖像放在一個大的PNG上,然後在使用它們時,在圖像所在的位置提取一個矩形。

我的一位同事使用我們免費的DotImage Photo SDK來製作一個簡單的應用程序來完成它。您可以免費使用源代碼和產品。他還演示瞭如何在CSS中提取矩形:

http://www.atalasoft.com/cs/blogs/jake/archive/2008/12/22/spritify-writing-a-css-image-sprite-generator-with-dotimage.aspx