建基于.NET Framework 精簡(jiǎn)版的動(dòng)畫控件
發(fā)布時(shí)間:2008-03-22 閱讀數(shù): 次 來(lái)源:網(wǎng)樂(lè)原科技
摘要:學(xué)習(xí)如何創(chuàng)建基于 .NET Framework 精簡(jiǎn)版的動(dòng)畫控件。
簡(jiǎn)介
在最近的項(xiàng)目中,有一項(xiàng)要求是在 Microsoft? .NET Framework 精簡(jiǎn)版的 Windows? 窗體中顯示動(dòng)畫 GIF。.NET Framework 精簡(jiǎn)版的 1.0 版沒(méi)有顯示動(dòng)畫 GIF 文件的功能,也不包含 .NET Framework 完整版中的 ImageAnimator 輔助類。通過(guò) ImageAnimator 類可以為基于時(shí)間幀的圖像制作動(dòng)畫。
盡管可以編寫 C# 代碼讀取 GIF86a 格式的動(dòng)畫 GIF,但是我在程序中選擇了一種更簡(jiǎn)單直觀的方法來(lái)顯示動(dòng)畫。
創(chuàng)建情節(jié)
如果您在選定的 GIF 編輯器中打開(kāi)一個(gè)動(dòng)畫 GIF,將會(huì)看到此文件是由相互銜接的多個(gè)圖像(幀)組成的:
圖 1:動(dòng)畫幀
這些圖像以壓縮格式存儲(chǔ),并附帶有關(guān)大小、數(shù)量和幀之間的延遲時(shí)間的信息。這些信息由顯示動(dòng)畫的程序讀取。
許多 GIF 編輯器允許您將圖像幀提取到順序排列的“故事板”中:
圖 2:故事板
我將故事板保存在一個(gè)位圖文件中,后來(lái)將此文件轉(zhuǎn)換為 GIF 格式,因?yàn)榇烁袷降奈募?.NET Framework 精簡(jiǎn)版中占用的內(nèi)存較少?,F(xiàn)在我要向您演示如何使用此圖像創(chuàng)建基于 .NET Framework 精簡(jiǎn)版的“動(dòng)畫”控件。