Вот что сработало для меня:
(1) Добавить каталог в проект: font
(2) Переместить файл шрифта ttf в каталог шрифтов
(3) ДобавитьФайл шрифта ttf для проекта
(4) Установите для свойства «Build» файла шрифта tff значение «Resource» (Примечание. В поле со списком я использовал «Resource» вместо «Embedded Resource».)
(5) Откройте окно, в котором вы используете шрифт, и внесите следующие изменения:
<Window ... >
<Window.Resources>
<FontFamily x:Key="YourFontNickName">
pack://application:,,,/font/#NameOfFont
<!-- Note: NameOfFont can be font by double clicking
on font from explorer and writing down name
of the font reported. Its not the same
as the file name -->
</FontFamily>
</Window.Resources>
<!-- Use font as Xaml -->
<StackPanel>
<Textblock FontFamily="{StaticResource YourFontNickName}">
This is a test
</Testblock>
<Textblock Name="text1"/>
</StackPanel>
...
</Window>
(6) Если вы хотите изменить шрифт из кода.Сделайте это:
public partial class Window1 : Window {
// Use font as C# Code
public void UpdateText1() {
text1.Text = "Hi There";
FontFamily ff = this.Resources["YourFontNickName"]
as FontFamily;
if (ff == null) {
Messagebox.Show("Wrong Font Name", "ERROR");
return;
}
text1.FontFamily = ff;
text1.FontSize = 30;
}
...
}