我有一些位图。 我知道位图格式是PixelFormat.FormatXXXXXXbppRgb =>但我想动态计算每个像素的大小。
例如=>如果位图像素格式为Format24bppRgb,我想计算R / G / B范围在0到255之间。
所以,我不知道如何获得在Format24bppRgb情况下R / G / B位大小为3的信息。 或格式为Format32bppRgb的R / G / B位大小为4。
P.S:我不想使用代码
BitmapData bmDateFrame = bitmap.LockBits(....)
Int32 picPixelBit = bmDateFrame.Stride / bitmap.Width;
答案 0 :(得分:1)
似乎PixelFormat
值的第二个字节(LSB)表示。
做这样的事情应该有效:
var somepixelformat = ...;
var colorsizeinbits = (((int)somepixelformat) >> 8) & 0xff;