改变 RGB 颜色的亮度

标签 c graphics colors

听说很简单

R*=f;
G*=f;
B*=f;

其中 f 是标量值 0 .. 1.0 或更大 改变亮度的方法不太正确 颜色,但我找不到一些代码片段 获得更好的东西(无需太多学习 色彩理论) 也许有人可以在这里给我这样的剪裁吗? TNX

最佳答案

将颜色转换为 HSL 或 HSV,然后调整亮度 (L) 或值 (V)。如果需要,请转换回 RGB。

关于改变 RGB 颜色的亮度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29486679/

相关文章:

c - 尝试使用 '.' 终止 while 循环

使用 C 和 BSON 计算 Mongo 游标中的文档。

将具有浮点顶点的段映射到二维整数空间(伪像素)的算法

c# - 桌面屏幕覆盖 - 新窗体闪烁问题

java - 删除 ASCII 颜色代码

c - erlang 运行时的错误架构?

c - 验证输入

javascript - 生成星空的算法

r - 创建具有不同间隔宽度且图例级别之间没有间隔的离散颜色条

android - 如何以编程方式更改 colors.xml 中颜色的值?