ubuntu下,对于终端字体颜色的设置

/* ubuntu 终端输出字体颜色的设置
 
   使用转义字符来改变字体颜色,这些转义字符都是一些特殊的字符,不是程序中用到的空格/ 换行之类的符号
  
      "\033[ xm          \033[xm"  分别表示句子始末字体的颜色
 
     字体色:30 --- 39          字体背景色:40 -- 49
      \033[30m       黑色           \033[ 40m       
      \033[31m       红色            \033[ 41m   
      \033[32m       绿色            \033[ 42m  
      \033[33m       黄色            \033[ 43m 
     \033[34m        蓝色            \033[ 44m  
     \033[35m        紫色            \033[ 45m
     \033[36m        深绿            \033[ 46m  

     \033[37m        灰白            \033[ 47m

     \033[38m        白色           \033 [ 48 m
     \033[39m        亮白           \033 [ 49 m
 
      其他控制:
        \033[0m  关闭所有属性
        \033[1m  设置高亮度
         \033[4m  下划线
         \033[7m   反显
         \033[8m   消隐         

  */

     这些主要用在程序输出语句中,使用这些来修改输出字体的颜色,针对的是linnux下的终端,本人没有在其他运行环境下测试,下面把测试的代码写进来。

#include <iostream>

using namespace std;

  int main()
  {
      cout << "\033[30m 1 first line" << endl;              //black
      cout << "\033[31m 2 second line " << endl;      // red
      cout << "\033[32m 3 third line " << endl;           // green
      cout << "\033[33m 4 fourth line" << endl;         // yellow
      cout << "\033[34m 5 first line" << endl;            // blue
      cout << "\033[35m 6 second line " << endl;    // purple
      cout << "\033[36m 7 third line " << endl;         //  deep green
      cout << "\033[37m 8 first line" << endl;
      cout << "\033[38m 9 second line " << endl;
      cout << "\033[39m 10 third line " << endl;
      //  这些转义符,其后输出的字体会按照前面定义的颜色进行输出,要改变颜色需要重新使用新的颜色转义字符,或者在句子末尾添加 \033 [ 0m  关闭字体颜色属性

       cout << "颜色:" << endl;
      cout << "\033[0m" << endl;
 
      cout << "\033[34m \033[1m Test gaoliang \033[0m" << endl;       //  变粗了 高亮       可以叠加此类转义字符
      cout << "\033[32m \033[1m \033[4m Test xaihuanxian \033[0m" << endl;
 
     cout << "\033[32m \033[7m   Test fanxain \033[0m" << endl;     // 加了背景色
 
     cout << "\033[34m \033[8m Test input hidden:" << endl;
      //string name;
      //cin >> name;
      cout << "\033[0m";
    

     // 使用一些特殊符号的unicode编码进行输出,并改变其填充颜色

      cout << "\033[31m \u2764 \u2764 \u2764 \u2764" << endl;  // 心型图标
      cout << "\u2605" << endl;  // 星星
      // 通过复制特殊图片
      cout << "卐" << endl;
  }
注意点:
    1  其中,一般我们通过 "  \033 [ xm         \033 [ xm   "  一对进行控制,前面的控制跟在它后面的句子,后面的控制该句后面进行输出的句子,如果改变一条句子的字体颜色,可以在后面使用 \033 [ 0m  关闭属性,那么后面的句子就不会受前面的影响了;

    2  其中的颜色控制符可以叠加使用,比如控制字体颜色的,和控制字体背景色的,及控制其他属性的可以结合起来使用

    3  有时候想要输出一些特殊的字符,使界面美化,可以参考http://blog.csdn.net/tectool/article/details/51577914 该博客,其中的js转义字符,在ubuntu下也可以使用;




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值