2016-06-29 401 views
0

一組8位可以存儲256個值。爲什麼.NET`PixelFormat`有一個`Format8bppIndexed`元素?

灰度級可以有256個變化。

那麼,爲什麼他們需要Format8bppIndexed?爲什麼它是Indexed

爲什麼不是Format8bpp

+0

你能否澄清爲什麼你認爲灰度與此相關?當然,你*可以有8位灰度(雖然你也可以有16位灰度等等),但這並不意味着你可以用每像素8位來做的事情。 –

+0

http://www.codeproject.com/Articles/70442/C-RGB-to-Palette-Based-bit-Greyscale-Bitmap-Clas – anonymous

+0

這是怎麼回事?你試圖達到什麼目標?請注意,雖然在特定情況下使用的調色板只包含灰色陰影,但這並不意味着情況總是如此。 –

回答

0

它的索引是因爲每個值都是一個顏色表的索引,它可能是RGB或RGBA,其深度更深。例如,您可以使用32位條目的調色板(每個紅色,綠色,藍色和alpha都有8位),但調色板本身只有256個條目,因此您可以用一個字節表示每個像素。這是(或至少)在PNG文件中常見的。

如果你往下看PixelFormat枚舉,你會看到最值組成的兩條信息:

  • 的位數
  • 什麼這些位表示,出:
    • Greyscale
    • ARGB/RGB
    • 索引
+0

您能否提供圖表或任何其他資源? – anonymous

+3

@anonymous:不是真的 - 這是一個相當簡單的概念。有一個調色板(通常在圖像文件的其他地方提供)顏色,每個像素值是該調色板的索引。你覺得哪一點棘手? –

相關問題