2012-10-02 121 views
0

我將一些CF 2.0 VB.Net應用程序移植到具有兩倍屏幕分辨率的手機的較新版本。所以我必須把所有東西的尺寸加倍,否則它會被擠壓到屏幕的左上角。使用位圖有什麼好處嗎?

一個屏幕有一個大小爲250K的位圖,當我將尺寸加倍後,它自然會被吹到一個MB。這在手持設備上不是很好,所以我啓動了irfanview並將其轉換爲.GIF。 .GIF只有60KB大小,圖像質量沒有明顯變化。

對我來說,這似乎是一件容易的事情:將所有Bitmaps轉換爲Gif(或JPG),並獲得相同的結果作爲磁盤空間的一小部分(並且可能更快的表單加載時間)。

但有沒有人知道你會使用位圖優先於GIF/JPEG的情況?我找不到任何。

+0

不回答你的問題,但.png通常會提供稍微好一點的壓縮.gif – AlfonsoML

+0

謝謝,我會試試看。 – DeanOC

+1

請記住,這些壓縮圖像必須先解壓縮纔可以使用。如果您的設備具有100K的可用RAM,則50K的JPEG或PNG可能會導致您的應用在使用過程中耗盡內存。 – jp2code

回答

2

我真的想不出任何一個比較喜歡GIF位圖的現實例子。由於GIF是無損格式,因此在存儲圖像時不會丟失任何信息。因此,在讀取應用程序中的文件後,您將擁有與讀取位圖相同的圖像數據。就像你說的那樣:文件會變小,因此可能會從磁盤讀取得更快。

JPEG是不同的,因爲它是一種有損格式,這意味着當存儲圖像時會丟失信息。您需要確定信息丟失在您的應用中是否有意義。

當且僅當從磁盤讀取文件比在內存中解壓文件快時,位圖將是更可取的。

準確地說,當將圖像存儲在主內存中時,您更願意使用位圖,因此您可以輕鬆地在代碼中處理數據。當你使用圖像庫加載文件時,實際上你最有可能已經擁有了這個功能。

1

爲了剪短故事短片,將BMP存儲爲一系列像素及其顏色。如果你想做模式識別,運動檢測等等,這很有用。

位圖通常用於他們的方便 - 你可以在沒有專業圖形軟件的情況下將其中的一個敲入。