Interface TextColor

All Superinterfaces:
Comparable<TextColor>, ComponentBuilderApplicable, net.kyori.examination.Examinable, RGBLike, StyleBuilderApplicable, TextFormat
All Known Implementing Classes:
NamedTextColor

public interface TextColor
extends Comparable<TextColor>, net.kyori.examination.Examinable, RGBLike, StyleBuilderApplicable, TextFormat
A color which may be applied to a Style.

The full range of hexadecimal colors are only supported in Minecraft: Java Edition 1.16 and above. On older versions, platforms may downsample these to NamedTextColors.

This color does not include any alpha channel information.

Since:
4.0.0
See Also:
NamedTextColor
  • Method Summary

    Modifier and Type Method Description
    default @NonNull String asHexString()
    Gets the color, as a hex string.
    default @org.checkerframework.common.value.qual.IntRange(from=0L, to=255L) int blue()
    Get the blue component of the text colour.
    static @NonNull TextColor color​(@org.checkerframework.common.value.qual.IntRange(from=0L, to=255L) int r, @org.checkerframework.common.value.qual.IntRange(from=0L, to=255L) int g, @org.checkerframework.common.value.qual.IntRange(from=0L, to=255L) int b)
    Create a new text colour with the red, green, and blue components individually.
    static @NonNull TextColor color​(float r, float g, float b)
    Create a new color with the individual components as floats.
    static @NonNull TextColor color​(int value)
    Creates a new text colour.
    static @NonNull TextColor color​(@NonNull HSVLike hsv)
    Creates a new text color, converting the provided HSVLike to the RGB color space.
    static @NonNull TextColor color​(@NonNull RGBLike rgb)
    Creates a new text colour.
    default int compareTo​(TextColor that)  
    default @NonNull Stream<? extends net.kyori.examination.ExaminableProperty> examinableProperties()  
    static @Nullable TextColor fromCSSHexString​(@NonNull String string)
    Create a color from a CSS hex string (#rrggbb or #rgb).
    static @Nullable TextColor fromHexString​(@NonNull String string)
    Create a new color from a hex string.
    default @org.checkerframework.common.value.qual.IntRange(from=0L, to=255L) int green()
    Get the green component of the text colour.
    default @org.checkerframework.common.value.qual.IntRange(from=0L, to=255L) int red()
    Get the red component of the text colour.
    default void styleApply​(@NonNull Style.Builder style)
    Applies to style.
    int value()
    The color, as an RGB value packed into an int.

    Methods inherited from interface net.kyori.examination.Examinable

    examinableName, examine

    Methods inherited from interface net.kyori.adventure.util.RGBLike

    asHSV

    Methods inherited from interface net.kyori.adventure.text.format.StyleBuilderApplicable

    componentBuilderApply
  • Method Details

    • color

      static @NonNull TextColor color​(int value)
      Creates a new text colour.
      Parameters:
      value - the rgb value
      Returns:
      a new text colour
      Since:
      4.0.0
    • color

      static @NonNull TextColor color​(@NonNull RGBLike rgb)
      Creates a new text colour.
      Parameters:
      rgb - the rgb value
      Returns:
      a new text colour
      Since:
      4.0.0
    • color

      static @NonNull TextColor color​(@NonNull HSVLike hsv)
      Creates a new text color, converting the provided HSVLike to the RGB color space.
      Parameters:
      hsv - the hsv value
      Returns:
      a new text color
      Since:
      4.6.0
      See Also:
      https://en.wikipedia.org/wiki/HSL_and_HSV
    • color

      static @NonNull TextColor color​(@org.checkerframework.common.value.qual.IntRange(from=0L, to=255L) int r, @org.checkerframework.common.value.qual.IntRange(from=0L, to=255L) int g, @org.checkerframework.common.value.qual.IntRange(from=0L, to=255L) int b)
      Create a new text colour with the red, green, and blue components individually.
      Parameters:
      r - red, as a value from 0 to 255
      g - green, as a value from 0 to 255
      b - blue, as a value from 0 to 255
      Returns:
      a new text colour
      Since:
      4.0.0
    • color

      static @NonNull TextColor color​(float r, float g, float b)
      Create a new color with the individual components as floats.
      Parameters:
      r - red, from [0, 1]
      g - green, within [0, 1]
      b - blue, within [0, 1]
      Returns:
      a new text colour
      Since:
      4.0.0
    • fromHexString

      static @Nullable TextColor fromHexString​(@NonNull String string)
      Create a new color from a hex string.
      Parameters:
      string - the hex string
      Returns:
      a new text colour
      Since:
      4.0.0
    • fromCSSHexString

      static @Nullable TextColor fromCSSHexString​(@NonNull String string)
      Create a color from a CSS hex string (#rrggbb or #rgb).
      Parameters:
      string - the hex string
      Returns:
      a new text colour
      Since:
      4.0.0
    • value

      int value()
      The color, as an RGB value packed into an int.
      Returns:
      the value
      Since:
      4.0.0
    • asHexString

      default @NonNull String asHexString()
      Gets the color, as a hex string.
      Returns:
      a hex string
      Since:
      4.0.0
    • red

      default @org.checkerframework.common.value.qual.IntRange(from=0L, to=255L) int red()
      Get the red component of the text colour.
      Specified by:
      red in interface RGBLike
      Returns:
      the red component, in the range [0x0, 0xff]
      Since:
      4.0.0
    • green

      default @org.checkerframework.common.value.qual.IntRange(from=0L, to=255L) int green()
      Get the green component of the text colour.
      Specified by:
      green in interface RGBLike
      Returns:
      the green component, in the range [0x0, 0xff]
      Since:
      4.0.0
    • blue

      default @org.checkerframework.common.value.qual.IntRange(from=0L, to=255L) int blue()
      Get the blue component of the text colour.
      Specified by:
      blue in interface RGBLike
      Returns:
      the blue component, in the range [0x0, 0xff]
      Since:
      4.0.0
    • styleApply

      default void styleApply​(@NonNull Style.Builder style)
      Description copied from interface: StyleBuilderApplicable
      Applies to style.
      Specified by:
      styleApply in interface StyleBuilderApplicable
      Parameters:
      style - the style builder
    • compareTo

      default int compareTo​(TextColor that)
      Specified by:
      compareTo in interface Comparable<TextColor>
    • examinableProperties

      default @NonNull Stream<? extends net.kyori.examination.ExaminableProperty> examinableProperties()
      Specified by:
      examinableProperties in interface net.kyori.examination.Examinable