Подтвердить что ты не робот

Что такое семейство шрифтов по умолчанию приложения WPF?

Что такое семейство шрифтов по умолчанию приложения WPF? Является ли эта система зависимой? Я нашел Tahoma в своей системе.

Если я создаю элемент управления, то будет ли установлен параметр fontfamily управления по умолчанию?

4b9b3361

Ответ 1

Шрифт по умолчанию - это текущий системный шрифт вашей текущей ОС. Tahoma является системным шрифтом по умолчанию для Windows XP, на Vista, Windows 7 это интерфейс Segoe.

Ответ 2

В Windows 8 кажется, что резервным шрифтом является пользовательский интерфейс Segoe с 0,9 базовым и 1,2 межстрочным интервалом.

Имитация шрифта по умолчанию WPF

  <Page
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:clr="clr-namespace:System;assembly=mscorlib">
    <Page.Resources>
      <clr:String x:Key="someText">The quick brown fox, ABCD, 1234567890, /@#</clr:String>
      <SolidColorBrush x:Key="lightColor">#bbbbbb</SolidColorBrush>
      <SolidColorBrush x:Key="darkColor">#000000</SolidColorBrush>
      <FontFamily x:Key="default">non existent font</FontFamily>
      <FontFamily x:Key="segoe">Segoe UI</FontFamily>
      <FontFamily x:Key="segoe_base" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/composite-font"
              xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"  
              xmlns:s="clr-namespace:System;assembly=mscorlib" 
              Baseline="0.9"
              LineSpacing="1.2">
        <FontFamily.FamilyNames>
          <s:String x:Key="en-US" >Baseline Segoe UI</s:String>
        </FontFamily.FamilyNames>
        <FontFamily.FamilyMaps>
          <FontFamilyMap Target="Segoe UI" />
        </FontFamily.FamilyMaps>
      </FontFamily>
    </Page.Resources>

    <StackPanel Margin="10" Width="250">
      <TextBlock TextWrapping="Wrap">Segoe UI with a baseline of 0.9 and line spacing of 1.2 lines up with the default font</TextBlock>
      <Grid Margin="5">  
        <TextBlock Foreground="{StaticResource darkColor}" TextWrapping="Wrap" FontSize="20" FontFamily="{StaticResource default}" Text="{StaticResource someText}"/>
        <TextBlock Foreground="{StaticResource lightColor}" TextWrapping="Wrap" FontSize="20" FontFamily="{StaticResource segoe_base}" Text="{StaticResource someText}"/>
      </Grid>
      <TextBlock Margin="0,10,0,0" TextWrapping="Wrap">Segoe UI with the default baseline and line spacing does not line up with the default font</TextBlock>
      <Grid Margin="5">  
        <TextBlock Foreground="{StaticResource darkColor}" TextWrapping="Wrap" FontSize="20" FontFamily="{StaticResource default}" Text="{StaticResource someText}"/>
        <TextBlock Foreground="{StaticResource lightColor}" TextWrapping="Wrap" FontSize="20" FontFamily="{StaticResource segoe}" Text="{StaticResource someText}"/>
      </Grid>
    </StackPanel>
  </Page>