用Perl在终端上打印彩色字符
如果在使用Perl的过程中,要在终端上打印出彩色字符,可以使用CPAN中的Term::ANSIColor模块。现在简单地介绍一下这个模块的几种使用方法: 1)use Term::ANSIColor; color()是把任意数量的颜色属性串成一个用空格分隔的字符串并存到变量color里,然后可以用普通的print方法输出彩色字符串。 例如:
这样就会打印出蓝色的粗体字。 记住输出到color里的颜色属性一定要是
这些。颜色属性不区分大小。普通颜色是设置前景色,而在前面添加了on_的颜色就是背景色了,例如on_blue就是把背景设成蓝色。 当你打印完需要输出的消息后,记得用reset属性把颜色去掉,否则以后的内容全部都是显示成该种颜色。该语句如下:
一个完整的例子就是:
2) use Term::ANSIColor qw(:constants); 如果使用这种方法,可以直接把颜色属性放在要输出的问题前面,从而简化输出步骤。这些颜色属性有:
等。 例如: 如果你打印完之后想清除掉字符串的格式,一定要记得在最后加上一个RESET的属性值。
3) $Term::ANSIColor::AUTORESET = 1; 对于2)的方法,如果你不想在每条打印语句后面加上RESET的话,你可以直接把$Term::ANSIColor::AUTORESET的值设为true。这样每次打印完字符,只要你的属性值之间没有逗号,系统将自动帮你清除掉颜色属性。 看一个完整的例子:
这三种方法,使用起来各有千秋,可根据要打印的复杂程度选用。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |