TextXML формат
Sponge использует предопределенную форму XML называемую «TextXML», чтобы добавить цвет или стили тексту. Описание элементов и атрибутов:
Элемент |
Атрибут |
Описание |
---|---|---|
a (anchor) |
href |
указывает, что при нажатии на этот текст откроется ссылка в атрибуте href. |
b (bold) |
Делает текст полужирным. |
|
c (color) |
n |
Применяет цвет, обозначенный атрибутом |
i (italics) |
Выделяет текст курсивом. |
|
o (obfuscated) |
Запутывает текст (заменяет символы на постоянно меняющимися). |
|
s (strikethrough) |
Зачёркивает текст. |
|
span |
onClick, onHover |
Общий элемент, который может иметь действия нажатия и/или наведения на текст, указанные атрибутами |
tr (translation) |
key |
Показывает перевод. |
u (underline) |
Подчёркивает текст. |
Например, текст «Hello World!», отформатированный с красным цветом и подчёркиванием, будет выглядеть в формате TextXML так:
<c n="red">
<u>Hello World!</u>
</c>
Это может быть сделано в коде так:
import org.spongepowered.api.text.Text;
import org.spongepowered.api.text.format.TextColors;
import org.spongepowered.api.text.format.TextStyles;
import org.spongepowered.api.text.serializer.TextSerializers;
Text text = Text.of(TextColors.RED, TextStyles.UNDERLINE, "Hello World!");
String xmlText = TextSerializers.TEXT_XML.serialize(text);