音乐推荐
说明
本文旨在介绍个人对jansi
的封装处理(具体的jansi
使用教程请自行Baidu
或者Google
),jansi
包用于在控制台中输出色彩丰富的文字,其Maven
坐标为:
|
|
Intellij IDEA
默认支持Ansi Color
,即可以正常识别Ansi
字符对应的颜色,但不支持斜体、双下划线、闪烁等特效;而Eclipse
控制台默认无法识别Ansi
颜色字符,它需要通过安装一个插件来实现,插件的地址为:http://www.mihai-nita.net/eclipse
,安装方式可以参考:Eclipse安装AnsiInConsole插件 中的Installation
说明(实际上Eclipse
安装了该插件仅仅是支持了Ansi
颜色字符的识别,依然不支持特效)。
彩色文字输出简单封装
|
|
彩色文字输出测试
测试样式:
|
|
测试结果:
本测试是基于Intellij IDEA
的测试,对于Eclipse
可能部分特效不支持。
高度可定制化的控制台彩色输出
除了一个简单的输出封装之外,本人也封装了一个高度可定制化的有趣的输出工具ColorfulRender
,该类以链式编程的方式来进行中间渲染处理,同时通过terminated
字段实现每个实例只能调用一次终止方法:
|
|
高度可定制化测试
测试样例:
|
|
测试结果:
IDEA
目前仅支持黑体、反显、下划线这三种特效。Eclipse
在关闭前、背景色渲染之后无法恢复成默认渲染!
生产环境中一般都是将日志输出到文件中,所以基本不会使用jansi
来实现控制台输出颜色渲染。有人可能会问,那你写这么多有什么用?我只能说这是个人的爱好吧!另外日志框架logback
也是支持定制日志输出级别的颜色(就是有些丑,都是暗色调渲染),有需要请自行搜索!
本文源码已经托管在GitHub
上的个人工具包项目中的一小部分,可以自行下载参考:GitHub1 或者 GitHub2
编写日期:2017-06-03 |
发布日期:2017-06-03 |
下篇预告
使用Protostuff
提高(反)序列化效率