Класс TextScaler
Класс TextScaler учитывает настройки доступности
и масштаб платформы. Виджеты текста передают его
в textScaler. Фабрика
linear
задаёт постоянный множитель, метод
scale
переводит fontSize в итоговый размер,
clamp
ограничивает множитель. Константа noScaling
оставляет размер без изменений.
Синтаксис
TextScaler.linear(1.2)
Методы
| Метод | Описание |
|---|---|
clamp |
Ограничивает минимальный и максимальный множитель текста. |
linear |
Создаёт TextScaler с постоянным множителем.
|
scale |
Переводит логический размер шрифта в итоговый. |
Пример
Давайте увеличим текст через textScaler у Text:
import 'package:flutter/material.dart';
void main()
{
runApp(
MaterialApp(
home: Scaffold(
body: Center(
child: Text(
'abcde',
textScaler: TextScaler.linear(1.5),
style: TextStyle(fontSize: 16),
),
),
),
),
);
}
На экране строка 'abcde' будет крупнее,
чем при масштабе 1.0.
Пример
Давайте применим noScaling и сохраним размер из style:
import 'package:flutter/material.dart';
void main()
{
runApp(
MaterialApp(
home: Scaffold(
body: Center(
child: Text(
'12345',
textScaler: TextScaler.noScaling,
style: TextStyle(fontSize: 14),
),
),
),
),
);
}
На экране текст '12345' останется размером 14
логических пикселей без системного увеличения.