Qt的输出窗口打印指定颜色信息。
“\033[32m” 是一个 ANSI escape code,用于改变控制台输出的颜色。这个特定的代码 “\033[32m” 用于将文本颜色设置为绿色。
在这个代码中:
- “\033” 是 ASCII 中的 ESC 字符(十进制 27),用于开始 escape sequence。
- “[” 是一个固定的字符,用于开始 CSI(Control Sequence Introducer)。
- “32” 是一个参数,表示要设置的颜色。在这个例子中,32 表示绿色。
- “m” 是一个固定的字符,表示设置图形模式(Set Graphics Mode)。
所以,当你在控制台输出 “\033[32mHello, World!\033[0m” 时,“Hello, World!” 将会以绿色显示,“\033[0m” 用于重置颜色回到默认。
请注意,这些代码并不是所有的控制台都支持。在一些不支持 ANSI escape codes 的控制台中,这些代码可能会被忽略,或者直接显示为文本。
以下是一些常用的 ANSI escape code 颜色代码:
\033[0m
:重置/关闭所有属性\033[1m
:粗体/Bright\033[2m
:暗色/Faint,不常用\033[3m
:斜体/Italic,不常用\033[4m
:下划线/Underline\033[5m
:闪烁/Blink,不常用\033[7m
:反显/Reverse,交换背景色和前景色\033[8m
:隐藏/Conceal,不常用\033[9m
:删除线/Strike,不常用
颜色代码:
\033[30m
:黑色\033[31m
:红色\033[32m
:绿色\033[33m
:黄色\033[34m
:蓝色\033[35m
:洋红色\033[36m
:青色\033[37m
:白色
背景颜色代码:
\033[40m
:黑色\033[41m
:红色\033[42m
:绿色\033[43m
:黄色\033[44m
:蓝色\033[45m
:洋红色\033[46m
:青色\033[47m
:白色
请注意,这些代码可能不会在所有的控制台中都能正常工作。在一些不支持 ANSI escape codes 的控制台中,这些代码可能会被忽略,或者直接显示为文本。
以下是一些高级的颜色代码:
\033[38;5;<n>m
:设置前景色为 256 色模式中的第<n>
色。<n>
可以是 0 到 255 的任何数字。\033[48;5;<n>m
:设置背景色为 256 色模式中的第<n>
色。<n>
可以是 0 到 255 的任何数字。\033[38;2;<r>;<g>;<b>m
:设置前景色为 RGB 模式中的指定颜色。<r>
,<g>
,<b>
可以是 0 到 255 的任何数字。\033[48;2;<r>;<g>;<b>m
:设置背景色为 RGB 模式中的指定颜色。<r>
,<g>
,<b>
可以是 0 到 255 的任何数字。
在 256 色模式中,颜色的分布如下:
- 0-7:标准颜色(和基本的颜色代码相同)
- 8-15:高亮颜色
- 16-231:6 × 6 × 6 立方(216 色):16 + 36 × r + 6 × g + b (0 ≤ r, g, b ≤ 5)
- 232-255:从黑到白的 24 级灰度色
在 RGB 模式中,你可以指定任何 RGB 颜色。例如,\033[38;2;255;0;0m
将设置前景色为红色。
请注意,这些高级的颜色代码可能不会在所有的控制台中都能正常工作。在一些不支持 ANSI escape codes 的控制台中,这些代码可能会被忽略,或者直接显示为文本。
示例:qDebug() << "B \\033[38;2;132;199;236m [ var : " << var << "] \\033[0m";