Как масштабировать текст в универсальном приложении Магазина Windows (W8.1 + WP8.1)? По сути, приложение должно выглядеть одинаково независимо от используемого устройства/разрешения. Текущая ситуация такова, что макет (макет на основе динамической сетки) и изображения хорошо масштабируются, за исключением текста (размер шрифта).
Отображаемый текст выглядит красиво для разрешения WVGA (480 × 800), но невероятно мал для разрешения 1080p.
Я уже прочитал много материалов, таких как рекомендации по масштабированию до плотности пикселей или Рекомендации по поддержке нескольких размеров экрана
Но я до сих пор не знаю, как масштабировать текст, чтобы он оставался читаемым независимо от разрешения экрана / DPI.
Конечно, я мог бы написать класс, который использует DisplayInformation. ResolutionScale для преобразования размера шрифта в соответствующее значение.
пример:
- FontSize 16 на WVGA с ScaleFactor 1x равен FontSize 16
- FontSize 16 на WXGA с ScaleFactor 1.6x равен FontSize 25,6
- FontSize 16 на 720p с ScaleFactor 1.5x равен FontSize 24
- FontSize 16 на 1080p с ScaleFactor 2.25x равен FontSize 36
Но я не уверен, что это будет работать для всех сценариев. Есть ли лучший способ сделать это? Я думал, что такая обычная задача может быть выполнена с некоторыми встроенными функциями.
Отказ от ответственности: это (надеюсь) не «позвольте мне погуглить этот вопрос для вас». Я нашел множество страниц, посвященных масштабированию, но все они охватывают макет или изображения. Но я не мог найти ничего о масштабировании размера шрифта. Пожалуйста, простите меня, если я что-то упустил.
Редактировать: Боюсь, я не смог четко выразить проблему: (WVGA слева, 1080p справа)