Класс Typography в WinRT
84Разработка под Windows 10 --- Класс Typography
Класс Typography в пространстве имен Windows.UI.Xaml.Documents не содержит ничего, кроме набора вложенных свойств для расширенной работы с текстом. Эти свойства можно вставить в корневой элемент страницы, элемент TextBlock или Run для управления различными аспектами отображения текста. К сожалению, нет гарантий, что эти возможности будут работать для всех шрифтов. Более того — возможно, вы далеко не сразу найдете шрифт, который реагирует на некоторые из этих вложенных свойств!
В следующих примерах я активно использовал документацию WPF-версии класса Typography, в которой приведена информация о совместимости некоторых вложенных свойств и конкретных шрифтов. В некоторых примерах задействованы шрифты Lindsey, Miramonte, Pescadero и Pericles:
<Page ...>
<Page.Resources>
<Style TargetType="TextBlock">
<Setter Property="Margin" Value="6 6 6 0" />
<Setter Property="FontSize" Value="48" />
</Style>
</Page.Resources>
<Grid Background="#FF1D1D1D">
<StackPanel>
<TextBlock Text="Шрифт Small Caps отлично подходит для заголовков"
Typography.Capitals="SmallCaps" />
<TextBlock Text="Linds Font"
FontFamily="ms-appx:///Fonts/Linds.ttf#Lindsey"
Typography.ContextualAlternates="True" />
<TextBlock Text="Дробные числа в шрифте Palatino Linotype: 1/2 1/4 1/8 1/3 2/3"
FontFamily="Palatino Linotype"
Typography.Fraction="Stacked" />
<TextBlock Text="Текст шрифтом Palatino Linotype"
FontFamily="Palatino Linotype"
Typography.HistoricalForms="True" />
<TextBlock Text="Порядок выравнивания для таблиц: 0123456789"
FontFamily="ms-appx:///Fonts/Miramo.ttf#Miramonte"
Typography.NumeralAlignment="Tabular" />
<TextBlock Text="Числа в старом стиле: 0123456789"
FontFamily="Palatino Linotype"
Typography.NumeralStyle="OldStyle" />
<TextBlock Text="Pescadero Font"
FontFamily="ms-appx:///Fonts/Pesca.ttf#Pescadero"
Typography.StandardSwashes="1" />
<TextBlock Text="Перечеркнутый ноль: 0"
FontFamily="ms-appx:///Fonts/Miramo.ttf#Miramonte"
Typography.SlashedZero="True" />
<TextBlock Text="PERICLES FONT - STYLISTIC ALTERNATES"
FontFamily="ms-appx:///Fonts/Peric.ttf#Pericles"
Typography.StylisticAlternates="1" />
<TextBlock FontFamily="Palatino Linotype">
Формула сахарозы C<Run Typography.Variants="Inferior">12</Run>
H<Run Typography.Variants="Inferior">22</Run>
O<Run Typography.Variants="Inferior">11</Run>
</TextBlock>
</StackPanel>
</Grid>
</Page>
Результат выглядит так: