Pull to refresh

WPF 4.0 — Отображение текста

Reading time1 min
Views3.9K
Возможно, для многих этот топик не окажется откровением, но я лично узнал об этом совсем недавно. Однако, многим начинающим разработчикам он может быть полезным.

Как известно, с самого рождения WPF болел проблемами с отображением текста. Особенно это было заметно на не крупных шрифтах (подписи к кнопкам, Labels, ListBoxes итд.) Однако, с выходом версии 4.0 Microsoft серьезно переработали вывод текста и добавили несколько полезных attached properties.

Я не буду останавливаться подробно на рассмотрении всех свойств, а приведу лишь короткий рецепт, как сделать, чтобы ваши контролы в WPF форме отображались с четким текстом. Подчеркну, что он применим к ситуации, когда вы используете стандартные контролы без особых трансформаций, анимаций и огромного текста.

Итак, достаточно добавить следующее свойства в элемент вашего окна:

<Window TextOptions.TextFormattingMode="Display" ...... />


Результат можно приблизительно увидеть здесь (по клику полное изображение):



Приблизительно, потому что скриншот полностью не отображает разницы, на работающем приложении все заметно гораздо лучше.

Для тех, кто хочет подробнее почитать про рендеринг текста в WPF 4.0 есть замечательный блог посвященный исключительно этой теме: WPF Text Blog. Очень советую почитать вот этот пост: blogs.msdn.com/b/text/archive/2009/08/24/wpf-4-0-text-stack-improvements.aspx

UPD: Коллега посоветовал интересный пост тему рендеринга текста: www.codinghorror.com/blog/2007/06/font-rendering-respecting-the-pixel-grid.html
Tags:
Hubs:
Total votes 47: ↑33 and ↓14+19
Comments8

Articles