2010-11-10 49 views

回答

38

「默認」字體是當前操作系統的當前系統字體。 Tahoma是Windows XP的默認系統字體,在Vista上,Windows 7是Segoe UI。

+0

但是當我打開MS Word中的默認字體爲「宋體」 .. – 2010-11-10 06:48:53

+9

這是默認的字體,你* *類型,但與UI的不是字體(即在Word的菜單和按鈕中使用的字體)。 – bitbonk 2010-11-10 06:57:31

+0

Windows 8的任何想法? – 2014-08-30 18:34:25

3

在Windows 8上,似乎後備字體是Segoe UI,具有0.9基線和1.2行間距。

Simulating WPF default font

<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> 
+1

值得一提的是,該字體系列來自'SystemFonts.MessageFontFamily'靜態屬性。所以如果你需要在應用程序的某個地方使用它 - 你應該從那裏讀取它,而不是自己構建新的FontFamily實例。 – torvin 2017-05-18 03:52:22

相關問題