Класс FontFamily
Класс FontFamily задаёт,
какой набор глифов использовать для текста.
Значение передают в параметр fontFamily
у Text
или в стили
TextStyle
и SpanStyle.
Синтаксис
FontFamily.Monospace
Значения
| Значение | Описание |
|---|---|
SansSerif |
Гарнитура без засечек, обычно для интерфейса. |
Serif |
Гарнитура с засечками. |
Monospace |
Моноширинная гарнитура, символы одной ширины. |
Cursive |
Почеркоподобная гарнитура. |
Если fontFamily не задан,
Compose берёт гарнитуру из темы Material.
Пример
Давайте сравним SansSerif и Monospace:
import android.os.Bundle
import androidx.activity.ComponentActivity
import androidx.activity.compose.setContent
import androidx.compose.foundation.layout.Column
import androidx.compose.material3.Text
import androidx.compose.ui.text.font.FontFamily
class MainActivity : ComponentActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContent {
Column {
Text(
text = "abcde",
fontFamily = FontFamily.SansSerif,
)
Text(
text = "12345",
fontFamily = FontFamily.Monospace,
)
}
}
}
}
На экране вторая строка будет с равной шириной символов, первая - обычным пропорциональным шрифтом.
Смотрите также
-
класс
FontWeight,
который задаёт толщину внутри гарнитуры -
перечисление
FontStyle,
которое включает курсив -
класс
TextStyle,
куда можно передать fontFamily -
функция
Text,
которая рисует текст выбранной гарнитурой