我正在寻找正确的sytanx来在xaml.cs文件中设置自定义字体。在.xaml文件中,我可以成功执行此操作:
<TextBlock FontFamily="Resources/#Charlemagne Std" FontSize="22" ... />
但是,我似乎无法在.xaml.cs文件中使用相同的功能。我尝试过这样的效果:
TextBlock tb = new TextBlock();
tb.FontFamily = new FontFamily(new Uri("pack://application:,,,/"), "#Charlemagne Std");
字体位于项目文件夹的Resources文件夹中。字体的名称是Charlemagne Std,字体文件的名称是chalemagnestd-regular.otf。
没有编译错误,但显示的字体似乎不正确。
感谢所有帮助
答案 0 :(得分:2)
如果字体位于项目文件夹的子文件夹中,则在构造FontFamily对象时需要包含该文件夹路径。使用:
new FontFamily(new Uri("pack://application:,,,/"), "./Resources/#Charlemagne Std");
有关详细信息,请参阅MSDN上的Packaging Fonts with Applications。