Biçimlendirme Kodu ve Eski Biçimi
Metin, bir çeşit biçimlendirmeyi belirten özel bir karakteri kullanarak ve ardından kullanılacak belirli biçimlendirmeyi belirten benzersiz bir karakter kullanarak temsil edilebilir. SpongeAPI’de, varsayılan olarak desteklenen iki farklı karakter vardır: işareti (&) ve bölüm karakteri (§).
Her iki biçimlendirme şeması da Minecraft Wiki’da bulunan kodları kullanmaktadır. Minecraft Wiki’nin yalnızca bölüm karakterinin (§) kullanımını görüntüler, ancak aynı kodların ampersand (&) ile de çalıştığı unutulmamalıdır.
Uyarı
Her tür biçimlendirme kodunu kullanan metini seri hale getirme, bir :javadoc:Text’in yani yalnızca biçimlendirme özelliklerinin bir kısmını temsil etmekle sınırlıdır. Her tür tıklama veya fareyle üzerine gelme eylemini temsil edemez. Kısaltma bir sorun değilse (Minecraft sohbetinde olduğu gibi) :doc: ./Xml veya ./Json kullanmanız önerilir.
Işareti ‘&’ biçimlendirmme
Varsayılan olarak, Sponge biçimlendirme karakterini & (ampersand) destekler. Ampersand biçiminin kullanılması kullanıcıların metin biçimlendirmesini daha kolay bir şekilde girmesini sağlar ve Minecraft sohbet konsolunda olduğu gibi kısalıkların gerekli olduğu durumlarda yararlıdır.
Bu biçimlendirmeyi kullanmak için ilgili dosyaya erişebilirsiniz TextSerializerTextSerializers#FORMATTING_CODE. Oradan, seriize
veya deserialize
yöntemlerini normal şekilde kullanabilirsiniz:
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 ampersandFormattedText = TextSerializers.FORMATTING_CODE.serialize(text);
Örneğin, kırmızı renkle ve bir alt çizgiyle biçimlendirilmiş “Merhaba Dünya!” Metni, ampersan biçimlendirme koduyla şu şekilde temsil edilir: &c&nMerhaba Dünya!
Eski Biçimlendirme
Eski metin gösterimi, Minecraft’ın eski sürümlerinde yaygın olarak kullanılan ve bölüm karakteriyle (§) temsil edilen biçimdir. Sponge seri hale getirme ve seri hale getirme işlemini eski biçim kullanarak yalnızca uyumluluk için sağlar. Kesinlikle gerekmedikçe kullanılmamalıdır. Bunun yerine, ampersand ile biçimlendirmeyi yukarıda belirtildiği gibi kullanmanız önerilir. Eski biçimlendirme, ampersan biçimlendirmesinin sahip olmadığı birkaç sınırlamaya sahiptir; bunların arasında en açık olan şey, kullanıcıların sohbet bölüm karakterini kolayca yazamamalarıdır.
Bu biçimlendirmeyi kullanmak için, karşılık gelen TextSerializer
’a erişebilirsiniz TextSerializers#LEGACY_FORMATTING_CODE. Oradan, `` serialize`` veya `` deserialize`` yöntemlerini normal şekilde kullanabilirsiniz:
Text text = Text.of(TextColors.RED, TextStyles.UNDERLINE, "Hello World!");
String legacyText = TextSerializers.LEGACY_FORMATTING_CODE.serialize(text);
Örneğin, kırmızı renkle ve bir alt çizgiyle biçimlendirilmiş “Merhaba Dünya!” Metni, eski biçiminde şu temsiliyete sahip olacak: §c§nMerhaba Dünya!
Tüyo
Kullanımı önerilmese de, aşağıdakileri arayabilirsiniz TextSerializers#formattingCode(char), yalnızca argüman olarak bir char
alanından geçerek hangisini istediğiniz biçimlendirme karakterini kullanarak :javadoc: FormattingCodeTextSerializer alabilirsiniz.