Figma, tasarımcıların tek bir öğede birden çok metin stili varyasyonu uygulamasına olanak tanır metin öğesi. Örneğin, paketlenmiş Figma bileşenindeki "Kahverengi" kelimesi aşağıda, çeşitli stiller içeren tek bir metin öğesi gösterilmektedir. tek bir kelime içinde farklı metin boyutları vardır.
![Tek bir metin öğesinde karışık metin stilleri](https://developer.android.com/static/develop/ui/compose/tooling/relay/images/multiple-styles-in-text/mixed-text-styles.png?authuser=0&hl=tr)
Geçiş,
Figma metin katmanındaki alt dizeler. Oluşturulan kaynak kodunda, Compose'un
AnnotatedString
ve SpanStyle
birden çok şeyi temsil etmek için kullanılır
stilleri de ekleyeceksiniz.
Desteklenen stiller şunlardır:
- yazı karakteri
- metin boyutu
- yazı tipi genişliği
- renk
- harf aralığı
- italik
- üstü çizili
- altı çizili
Oluşturulan Compose kodunda, Relay'in RelayText
composable'ı şunlardan birini kabul edebilir:
String
veya AnnotatedString
. Relay,
Şu öğede birden fazla stil oluşturulacak AnnotatedString.Builder
ve SpanStyle
sınıfları:
metin. Aşağıdaki kod parçası,
"atlama" kelimesi, ardından özel stil içermeyen bir boşluk ve ardından "atlama" kelimesi
kalın italik yazılmış "üzerinde".
RelayText(
content = buildAnnotatedString {
append("The ")
...
withStyle(
style = SpanStyle(
letterSpacing = 8.64.sp,
)
) { // AnnotatedString.Builder
append("jumps")
}
append(" ")
withStyle(
style = SpanStyle(
fontFamily = inter,
fontSize = 32.0.sp,
fontWeight = FontWeight(700.0.toInt()),
fontStyle = FontStyle.Italic,
)
) { // AnnotatedString.Builder
append("over")
}
...
},
...
)
Sınırlamalar
- Desteklenmeyen Figma Özellikleri
- Paragraf aralığı
- Paragraf girintisi
- Sayı stilleri
- Mektup biçimleri
- Stille ilgili gruplar
- Üstü çizili ve altı çizili
- Satır yüksekliği (tüm metin öğesine uygulandığında da çalışır)
- Metin parametresine tek bir stille aktarılırsa birden fazla stil atlanıyor
Sizin için önerilenler
- Not: JavaScript kapalıyken bağlantı metni gösterilir
- Metni biçimlendirme
- Kullanıcı etkileşimlerini etkinleştirme
- Parametre ekleme