【问题标题】:How do i use more than 8 colors in ncurses?如何在 ncurses 中使用超过 8 种颜色?
【发布时间】:2016-03-11 16:52:22
【问题描述】:

我刚开始在 Linux 上使用 ncurses。我想使用超过 8 种颜色,但只有 8 种可用。

如何使用更多颜色,或者通过给它们命名来创建自己的颜色,并设置它们的 RGB 值?

我尝试使用 init_color 编辑颜色,但这只会替换当前 8 种颜色中的一种,而不是创建新颜色。

注意:全局变量COLORS的值是256,所以我相信我最多可以使用256种不同的颜色。

【问题讨论】:

标签: c linux ncurses


【解决方案1】:

如果您的终端支持,您应该选择(或自定义)具有 8 种以上颜色的终端描述。事实上,有很多现有的终端描述可供使用:大多数是为特定终端(或终端仿真器)定制的。

如果您的终端支持它,相应的描述将具有initc 的能力。库调用init_color 使用它。 xterm-256color 条目有这样的例子:

initc=\E]4;%p1%d;rgb\:%p2%{255}%*%{1000}%/%2.2X/%p3%{255}%*%{1000}%/%2.2X/%p4%{255}%*%{1000}%/%2.2X\E\\,

它告诉库如何将三个参数转换为转义序列。终端入口由xterm+256color等可重复使用的部分组成,因为某些终端缺少您感兴趣的功能。对于那些,xterm+256setaf是合适的。

供参考,

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2010-09-15
    • 1970-01-01
    • 2012-05-16
    • 1970-01-01
    • 2014-03-13
    • 2020-06-15
    • 2019-09-22
    • 2015-09-19
    相关资源
    最近更新 更多