原始碼地址:http://download.csdn.net/detail/crystal_lz/9466073
效果如下:

本來代碼想全部自己寫的 找了關于gif檔案格式的資料還有lzw壓縮演算法
可是發現這些還不夠 不知道怎么建立顏色表 網上找了一下似乎都沒有找到相關資料 估計也就只有一些影像處理的書籍里面才有了
所以 代碼并不是全部都是我寫的 是網上下載的一個<AnimatedGifEncoder>來改的 說實在的感覺效率很慢 但是我有無能為力 沒有相關資料 不知道要怎么去改寫優化 只是改寫了部分代碼
錄制螢屏的代碼封裝到了一個 dll 中方便其他程式呼叫
里面主要有兩個類

使用方便簡單
ScreenRecorder sr = new ScreenRecorder(+2)//兩個構造 自己看代碼
sr.Start();//開始
sr.Stop();//暫停
sr.Clear();//清空已經錄制的
Dictionary<Image, int> frames = sr.Frames//錄制的幀和對應延時
GIFCreator gc = new GIFCreator(width, height, GIFCreator.GIFColorDepth.Depth8Bit);//創建一個gif影像
gc.AddFrame(Image,int) //添加一幀影像 分別是影像和對應延時
Image gc.GetGifImage()
byte[] gc.GetImageBytes()//分別是得到gif影像物件和得到影像的二進制資料
uj5u.com熱心網友回復:
不知道 為什么上面哪張GIF谷歌瀏覽器 這張圖 放到一半就沒了 其他瀏覽器包括我手機瀏覽器 或者圖形查看器 一切正常 我也不知道什么情況了。。。。。但是 我又試了一下 錄制一張圖用谷歌瀏覽器打開 又是正常的 就當是巧合吧 或者是我保存錄制的時候 替換檔案的時候出錯了 反正不管了
GIF錄制這種東西 網上大把的 我只是研究研究而已。。
uj5u.com熱心網友回復:
支持一下,可惜Gif最多只支持256色,某些情況下色彩會明顯失真。個人喜歡用BB FlashBack這個螢屏錄制工具,匯出Flash swf格式,體積小質量高。uj5u.com熱心網友回復:
感謝lz的分享,給你推薦下。uj5u.com熱心網友回復:
6666 學習下uj5u.com熱心網友回復:
x 回錯貼了
uj5u.com熱心網友回復:
uj5u.com熱心網友回復:
感謝分享
uj5u.com熱心網友回復:
都是高手啊,heheuj5u.com熱心網友回復:
感謝分享@!uj5u.com熱心網友回復:
感謝分享@!uj5u.com熱心網友回復:
感謝分享@!支持一下,可惜Gif最多只支持256色,某些情況下色彩會明顯失真。個人喜歡用BB FlashBack這個螢屏錄制工具,匯出Flash swf格式,體積小質量高。uj5u.com熱心網友回復:
uj5u.com熱心網友回復:
自已寫的,頂一個。gifcma不錯
uj5u.com熱心網友回復:
我們需要這樣的資源uj5u.com熱心網友回復:
uj5u.com熱心網友回復:
謝謝分享~
uj5u.com熱心網友回復:
謝謝分享~
uj5u.com熱心網友回復:
看了一下,沒有保存圖片呀。。uj5u.com熱心網友回復:
樓主ID亮了uj5u.com熱心網友回復:
好人啊!!
PS:質量部分可以考慮用 OctreeQuantizer 。會好很多很多
uj5u.com熱心網友回復:
謝謝分享
uj5u.com熱心網友回復:
一直在用screentogif 這個工具 也挺方便的uj5u.com熱心網友回復:
謝謝樓主。我會好好學習的
uj5u.com熱心網友回復:
uj5u.com熱心網友回復:
樓主可以參考http://bbs.csdn.net/topics/390754886,lzw相關原始碼可以在fastCSharp的fastCSharp.drawing.gif.file中找到,其中還包括顏色數量處理。由于我對winform不熟,所以只做了一個簡單的界面。
uj5u.com熱心網友回復:
mark 學習下uj5u.com熱心網友回復:
好東西,mark分享啊uj5u.com熱心網友回復:
不錯 學習一下uj5u.com熱心網友回復:
可以,好東西uj5u.com熱心網友回復:
樓主,加我下扣扣 100576208uj5u.com熱心網友回復:
謝謝分享,學習學習
uj5u.com熱心網友回復:
csdn搞這個積分真雞巴討人厭uj5u.com熱心網友回復:
我電腦系統字體大小改了下,區域錯位了,原始碼有待改進uj5u.com熱心網友回復:
頂樓主,支持uj5u.com熱心網友回復:
看起來不錯啊uj5u.com熱心網友回復:
謝謝分享
uj5u.com熱心網友回復:
感謝分享uj5u.com熱心網友回復:
感謝樓主無私分享,練練手轉載請註明出處,本文鏈接:https://www.uj5u.com/net/63507.html
標籤:C#
上一篇:【原始碼】仿 Edge 風格的 TabControl 控制元件
下一篇:OSGi規范的C#實作開源
