C++ cmd如何使用24种颜色?

C++ cmd如何使用24种颜色?,c++,colors,cmd,console,ansi-escape,C++,Colors,Cmd,Console,Ansi Escape,当我选择深色时它们会反转为不适用于控制台的颜色。如果我选择深黄色“rgb 0 128 128”它将转换为浅蓝色“rgb 127 255”颜色,该颜色不是标准颜色,不能由以下普通方法使用: SetConsoleTextAttribute,ANSI.SYS\033[1;34m 如果我能得到答案,那将对我大有帮助 谢谢!:) 问题是:如何使控制台窗口上选定单元格的颜色看起来像未选定颜色的反转版本(例如,前景和背景切换) 此行为内置于控制台窗口(或者更一般地说,是终端)中。控制台窗口中没有转义序列或其他

当我选择
深色时
它们会反转为不适用于控制台的颜色。如果我选择
深黄色“rgb 0 128 128”
它将转换为
浅蓝色“rgb 127 255”
颜色,该颜色不是标准颜色,不能由以下普通方法使用:

SetConsoleTextAttribute,
ANSI.SYS
\033[1;34m

如果我能得到答案,那将对我大有帮助

谢谢!:)


问题是:如何使控制台窗口上选定单元格的颜色看起来像未选定颜色的反转版本(例如,前景和背景切换)

此行为内置于控制台窗口(或者更一般地说,是终端)中。控制台窗口中没有转义序列或其他记录在案的功能可以做到这一点

在更一般的意义上,这方面在不同的终端上是不同的。例如,xterm可以:

  • 交换前景色和背景色,或
  • 对所选文本使用特定颜色
xterm通过在颜色表中的不同项之间映射来实现这一点


其他一些终端可以通过异或颜色值实现颜色更改,将0映射到255,255映射到0(白/黑)。这很容易实现。但是,对于白色和黑色以外的颜色,它会产生与图片中所示的效果类似的效果。

+1我记得我在上一台计算机上的cmd中出现了故障,因此我有多个选择。我可以制作一个程序,选择不同的位置以获得24种颜色吗?可能不会(我不记得任何同时使用多个选择颜色的控制台/终端实现)。