要输出彩色信息有点类似于html的语法,即在要输出的文字前加上一段颜色指令。
指令格式如下\033[*m 这里的*就是转义字符,例如我们要输出一段绿色的文字,则
qDebug() << "\033[32m" <<"Hello!";
即在输出文字前,先输出一个颜色指令。 注意这个指令对后续的输出都会生效,
如果想关掉颜色只要再输出0号指令即可
qDebug() << "\033[0m";
0 : Reset Color Attributes
1 : 加粗
2 : 去粗
4 : 下划线
5 : 闪烁
7 : 反色
21/22 : 加粗 正常
24 : 去掉下划线
25 : 停止闪烁
27 : 反色
30 : 前景,黑色
31 : 前景,红色
32 : 前景,绿色
33 : 前景,黄色
34 : 前景,篮色
35 : 前景,紫色
36 : 前景,青色
37 : 前景,白色
40 : 背景,黑色
41 : 背景,红色
42 : 背景,绿色
43 : 背景,黄色
44 : 背景,篮色
45 : 背景,紫色
46 : 背景,青色
47 : 背景,白色
enum class LogType {
Reset = 0,
Bold,
Unbold,
FrontBlack,
FrontRed,
FrontGreen,
FrontYellow,
FrontBlue,
FrontPurple,
FrontCyan,
FrontWhite,
BackBlack,
BackRed,
BackGreen,
BackYellow,
BackBlue,
BackPurple,
BackCyan,
BackWhite,
TypeCount
};
static const char * logCommands[] = {
"\033[0m",
"\033[1m",
"\033[2m",
"\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",
};
设置了console的工程不能显示出彩色,得把console去掉。
原文链接:Qt输出彩色log信息 - 知乎 (zhihu.com)
标签:输出,QT,背景,前景,彩色,指令,033,log From: https://www.cnblogs.com/lllion/p/17428654.html