WPF:字体(大小)在XP和Vista / 7上的呈现方式不同

时间:2010-11-28 15:17:49

标签: wpf fonts windows-xp rendering font-size

代码非常简单:

<TextBlock TextAlignment="Center" Text="{Binding TimeAgo}" Foreground="White" FontSize="12" FontFamily="Calibri" Background="Transparent"/>

据我所知,WPF本身支持Calibri字体。但是,字体在XP和Vista / 7上呈现的方式不同:

XP: alt text

Vista中: alt text

我的主要问题是字体的大小(它在XP上渲染得更大),因为我有专门的,有限的文本空间。

我目前正在使用UseLayoutRounding =“True”,但删除它并没有任何区别。我也在使用:

<ResourceDictionary Source="/PresentationFramework.Aero, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, ProcessorArchitecture=MSIL;component/themes/aero.normalcolor.xaml" />

但删除它也没有任何区别(就字体的大小而言)。

1 个答案:

答案 0 :(得分:8)

WPF没有任何字体的原生支持,它只能使用机器上安装的字体。

较大的文字不是Calibri(对我来说看起来像Arial或Tahoma),你可以看一下“g”的形状,看看那些字体不一样。

如果您或其他软件(如Office 2007或更高版本)首先安装了Calibri,则只能在XP上使用Calibri。