我有一个Java程序,它使用JLine2来处理控制台终端上的输入和输出。出于美观原因,如果终端的背景颜色为白色,则该程序效果最佳。
那么,是否可以在java中设置终端的背景颜色?理想情况下使用 JLine,但我不介意其他解决方案,只要它们可移植且不太复杂即可。
这就是我想做的:
ConsoleReader console= new ConsoleReader();
console.getTerminal().setBackgroundColor("WHITE") // <- Ideally!
编辑
我不认为这个问题Highlighting text in commandline java是相关的。我不想设置打印字符的背景颜色,而是想设置终端屏幕的背景颜色。我可以打印一堆白色背景的空白,然后在其上打印,但这对我来说似乎是一个非常笨拙的解决方案。
例如,从此(黑色背景):
我想要这个(白色背景):
谢谢!
达里奥
最佳答案
我会尝试使用转义码。
白色背景为\e[107m
,黑色前景为\e[30m
,即如下所示会导致白底黑字:
echo -e "\e[107m\e[30mTest String"
在 Java 中,您会在应用程序启动期间出现 System.out.println("\033[107m\033[30m")
。
参见List of ANSI color escape sequences和 http://misc.flogisoft.com/bash/tip_colors_and_formatting了解更多详情
关于java - 用Java设置终端背景颜色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38900822/