为什么.NET`PixelFormat`有一个`Format8bppIndexed`元素?

时间:2016-06-29 19:06:03

标签: .net c#-4.0 bitmap pixel grayscale

一组8位可以存储256个值。

灰度级可以有256种变化。

那么,为什么他们需要Format8bppIndexed?为什么是Indexed

为什么不Format8bpp

1 个答案:

答案 0 :(得分:0)

它已被索引,因为每个值都是颜色表的索引,颜色表可能是RGB或RGBA,具有更高的深度。例如,您可以使用32位条目的调色板(红色,绿色,蓝色和alpha各8位),但调色板本身只有256个条目,因此您可以使用单个字节表示每个像素。这在PNG文件中是常见的(或者至少是常见的)。

如果您向下看PixelFormat枚举,您会发现大多数值构成了两条信息:

  • 位数
  • 这些位代表什么,出于:
    • 灰度
    • ARGB / RGB
    • 索引