在终端上用颜色打印字符串

Print strings on terminal with color

谁能告诉我如何在 Java 中用颜色在终端上打印我的字符串?如果有为此目的的图书馆请介绍给我,我宁愿使用一个也不愿自己做:)

提前致谢。

是的。我在 Java 中实现了一个名为 JTerminal 的库,用于在终端上打印自定义输出,包括具有所需前景色和背景色的 print 和 println。支持8位256色(XTerm代码)。

这是一个易于使用的库。要用你想要的颜色打印你的字符串,你只需要静态调用 printprintln 方法:

import io.github.shuoros.jterminal.JTerminal;
import io.github.shuoros.jterminal.ansi.Color;

public class Main {

    public static void main(String[] args) {
        // Prints "Hello World!" with orange foreground color
        JTerminal.println("Hello World!", Color.ORANGE);
        // Prints "Hello World!" with orange foreground and white background color
        JTerminal.println("Hello World!", Color.ORANGE, Color.WHITE);
    }
}

您还可以通过一行代码为您的字符串着色不同范围的不同颜色:

import java.util.List;

import io.github.shuoros.jterminal.JTerminal;
import io.github.shuoros.jterminal.ansi.Color;
import io.github.shuoros.jterminal.util.TextEntity;

public class Main {

    public static void main(String[] args) {
        // Prints ">JTerminal:~ 1.0.2" with the colors of its logo
        JTerminal.println(">JTerminal:~ 1.0.2", List.of(//
                new TextEntity(0, 1, Color.DARK_SEA_GREEN_7), //
                new TextEntity(1, 10, Color.ORANGE), //
                new TextEntity(10, 12, Color.DARK_SEA_GREEN_7), //
                new TextEntity(12, 18, Color.WHITE)));
    }
}

要将 JTerminal 添加到您的 Maven 或 gradle 项目中,您可以添加其依赖项:

行家

<!-- https://mvnrepository.com/artifact/io.github.shuoros/JTerminal -->
<dependency>
    <groupId>io.github.shuoros</groupId>
    <artifactId>JTerminal</artifactId>
    <version>1.0.2</version>
</dependency>

Gradle

// https://mvnrepository.com/artifact/io.github.shuoros/JTerminal
implementation group: 'io.github.shuoros', name: 'JTerminal', version: '1.0.2'

前往 JTerminal github repository 查看一些示例。

控制台输出屏幕默认为黑色或白色。

如果您想在输出屏幕上突出显示某些文本,您可以使用 ANSI 颜色代码并突出显示特定文本。

System.out.println(ANSI_COLORNAME + "This text is colored" + ANSI_RESET);