2010-09-15 49 views
0

我有一個用於PND運行Windows CE(5.0和6.0)的前端程序它使用大量圖像(當前爲png格式)作爲按鈕或用於裝飾目的。這些圖像通過new Bitmap(path);如何更有效地加載和管理圖像?

從SD卡加載我目前使用v3.5的框架。

加載後,OS +我的應用程序已經消耗了75至80%的設備內存。

很好的方法來優化所有文件?

回答

4

我腦海中想要優化這些圖片的唯一方法是將它們調整爲實際需要的大小(如大多數圖標將以16x16大小使用),並且如果您還將圖片存儲爲位圖,則不會顯示您的卡片您還可以將使用過的調色板設置爲與給定圖片的確切需要相匹配的尺寸(例如,16x16的圖片具有256個像素,因此您需要256色的最大調色板,但也可能是自定義的16色調色板是足夠的,原因在您的圖片只有16種不同的顏色)。

作爲第二種方法,你也可以檢查你是否可能有多次加載相同的圖片。在這種情況下,您應該只加載一次並多次使用它。

最後一個,我想到的是屬於背景圖片。如果你有一個堅實的背景,你不需要一個完整的大小的圖像。只需要一個1x1位圖並將其拉伸至所需的大小。漸變背景的計數相同,但在這種情況下,您將有一個1x2位圖將被拉伸。最後但並非最不重要的,如果你有一個規則的模式,只需要從它的最小的獨特的磚,並使用一些瓷磚機制。

0

如果您創建操作系統,是否有可能將圖像存儲爲操作系統的一部分?

如果它是可能的,而圖像加載完全到RAM,你只能在需要顯示的基礎和卸載它們不需要的時候加載圖像。由於訪問RAM比訪問SD卡的速度快,這也會消除一些加載時間。

與同一概念的另一種伎倆是將所有影像複製到RAM基於FS並加載它們只在需要的基礎 - 的一面是,這需要在每次重新啓動之後進行。