和我其他的 Windows Phone 8 项目一样,我想使用自定义字体。但是在新的通用应用程序架构下,我很难实现这个目标。
我在共享项目中创建了一个名为“Fonts”的文件夹,并将字体文件添加到其中,并将属性 Build Action 设置为“Content”。
我还创建了一个名为“Themes”的文件夹,并向其中添加了一个 ResourceDictionary(“Generic.xaml”)。
我添加了一个 FontFamily 资源:
<FontFamily x:Key="RexBoldFontFamily">/Fonts/Rex Bold.otf#Rex Bold</FontFamily>
我在 App.xaml 中这样引用它:
<Application.Resources>
<ResourceDictionary>
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="Themes/Generic.xaml"/>
</ResourceDictionary.MergedDictionaries>
<vm:ViewModelLocator x:Key="Locator" d:IsDataSource="true" />
</ResourceDictionary>
</Application.Resources>
在我的Windows Phone项目的MainPage.xaml中,我尝试像这样使用它:
<TextBlock Text="{Binding HelloWorld}" Foreground="{ThemeResource RedBrush}" HorizontalAlignment="Center" VerticalAlignment="Center" FontFamily="{StaticResource RexBoldFontFamily}" FontSize="22"/>
我确定这是字体的名称,因为它在我的Windows手机应用程序中有效。而且所有这些都很顺畅,因为它能够与颜色资源很好地配合使用。
有人成功分享并使用过这种字体吗?