gpt4 book ai didi

c++ - 如何将彩色文本输出到 Linux 终端?

转载 作者:IT老高 更新时间:2023-10-28 11:25:02 25 4
gpt4 key购买 nike

如何将彩色字符打印到支持它的 Linux 终端?

如何判断终端是否支持色码?

最佳答案

你需要输出ANSI colour codes .请注意,并非所有终端都支持此功能;如果不支持颜色序列,则会显示垃圾。

例子:

 cout << "\033[1;31mbold red text\033[0m\n";

这里,\033是ESC字符,ASCII 27。后面跟着[,然后是零个或多个数字,用;隔开,最后是字母 m。这些数字描述了从该点开始切换到的颜色和格式。

前景色和背景色的代码是:

         foreground background
black 30 40
red 31 41
green 32 42
yellow 33 43
blue 34 44
magenta 35 45
cyan 36 46
white 37 47

此外,您还可以使用这些:

reset             0  (everything back to normal)
bold/bright 1 (often a brighter shade of the same colour)
underline 4
inverse 7 (swap foreground and background colours)
bold/bright off 21
underline off 24
inverse off 27

table on Wikipedia对于其他不太广泛支持的代码。


要确定您的终端是否支持颜色序列,请读取 TERM 环境变量的值。它应该指定使用的特定终端类型(例如 vt100gnome-terminalxtermscreen、.. .)。然后在 terminfo database 中查找;检查 colors 功能。

关于c++ - 如何将彩色文本输出到 Linux 终端?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2616906/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com