📜  在C中使用不同的字体和大小打印彩色消息(1)

📅  最后修改于: 2023-12-03 15:37:35.173000             🧑  作者: Mango

在C中使用不同的字体和大小打印彩色消息

在C语言中,可以使用ANSI转义序列来控制控制台输出的颜色、字体和大小。ANSI转义序列是一种特殊的字符序列,以ESC(ASCII码为27)为起始,用来修改输出文本的颜色、字体和位置等属性。

改变控制台输出的颜色

以下是一些ANSI转义序列,可以用来控制控制台输出的颜色:

  • \x1b[30m:设置文本颜色为黑色
  • \x1b[31m:设置文本颜色为红色
  • \x1b[32m:设置文本颜色为绿色
  • \x1b[33m:设置文本颜色为黄色
  • \x1b[34m:设置文本颜色为蓝色
  • \x1b[35m:设置文本颜色为紫色
  • \x1b[36m:设置文本颜色为青色
  • \x1b[37m:设置文本颜色为白色

例如,要将输出文本的颜色设置为红色,可以使用以下方法:

printf("\x1b[31mHello World\x1b[0m\n");

其中,\x1b[0m用于重置颜色属性。

改变文本字体和大小

以下是一些ANSI转义序列,可以用来控制文本字体和大小:

  • \x1b[1m:设置文本加粗
  • \x1b[2m:设置文本变为暗色
  • \x1b[3m:设置文本斜体
  • \x1b[4m:设置文本带下划线
  • \x1b[5m:设置文本闪烁
  • \x1b[7m:设置文本反相显示
  • \x1b[8m:设置文本隐藏
  • \x1b[9m:设置文本加删除线

例如,要将输出文本设置为加粗,可以使用以下方法:

printf("\x1b[1mHello World\x1b[0m\n");

其中,\x1b[0m用于重置字体和大小属性。

结合使用

以上两种ANSI转义序列可以结合使用,实现控制控制台输出文本的颜色、字体和大小等属性的修改。例如,下面的代码段实现了输出一个红色的加粗字体:

printf("\x1b[31;1mHello World\x1b[0m\n");

其中,\x1b[31;1m用于同时设置文本颜色为红色和字体为加粗。