c - 如何将 24 位 RGB 转换为 8 位 RGB

标签 c colors rgb 8-bit 24-bit

我想知道将 24 位 RGB 颜色(每种颜色 8 位)转换为 8 位颜色(2 位蓝色、3 位绿色、3 位红色)的最佳方法是什么。我想要执行此操作的 C 代码。

最佳答案

8 位 RGB 通常是索引(调色)颜色格式,参见 Palette (computing) .

不过按照您描述的方式,从 24 bpp 中获取 8 bpp 非常简单 - 您需要去除最低有效位并将这些位合并为每个像素的单个字节值。据我所知,它不是标准或众所周知的像素颜色表示。

关于c - 如何将 24 位 RGB 转换为 8 位 RGB,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7657704/

相关文章:

c++ - 显示 RGB888 内容

c++ - 使用 Mat OpenCV 访问像素

c - 了解 fork()、sleep() 和进程通量

arrays - 如何丢弃用户输入中除 a-z && A-Z && 0-9 之外的所有字符以查找可能的回文

javascript - HTML5 颜色选择改变跨度颜色

Java Graphics,使用点击事件改变绘图的颜色

python - 将 RGB 图像转换为棕褐色滤镜的公式是什么?

具有等待时间的 pthreads 的消费者/生产者

c - 如何在C中多次执行循环?

c# - Windows Phone 8 更改口音和主题颜色