Я не могу понять, как определить, как правильно визуализировать шрифт OpenType в WPF (.NET 4.5/VS2012/Windows 8). У меня есть шрифт, установленный на моем компьютере под названием «DINPro-BlackItalic».WPF не отображает имя шрифта Windows OpenType
Имя файла: DINPro-BlackItalic.otf
Windows, сообщает имя шрифта: DINPro-BlackItalic
В WPF я сделать что-то простое, как это:
<TextBlock Text="This is a sample sentence in DINPro-BlackItalic"
FontFamily="DinPro-BlackItalic" FontSize="24" />
или FontFamily="#DinPro-BlackItalic"
Это не работает (явно не курсивом), и оно возвращается к шрифту по умолчанию. Я пробовал множество других вариантов, которые работают для других шрифтов в каталоге шрифтов.
Например, Comic Sans работы: FontFamily="Comic Sans MS"
(удивительный ...)
Теперь, вот почему я действительно путают: Если я просто предполагаю, что на другой способ перемежать имя шрифта, он делает правильно!
Это работает: FontFamily="Din Pro Black Italic"
В общем, вот снимок экрана различных настроек FontFamily в WPF:
Два вопроса:
1) Как я должен догадаться,, чтобы сказать WPF о том, чтобы сделать этот шрифт? У него должно быть какое-то каноническое имя, зарегистрированное где-то, но оно не отображается в имени файла, свойствах файла или имени шрифта, которое сообщает Windows после того, как он проанализировал файл.
2) Что еще хуже, что, если я пытаюсь сделать то же шрифт в настольном приложении и на веб-браузеры, как Chrome на Windows, и даже IE ожидать «DINPro-BlackItalic» и не будет оказывать разнесенная версия имени. Кажется, что WPF и браузеры окон делают взаимно исключающим решениями о том, какое имя шрифта использовать для индексации шрифтов. Как мне обойти это для произвольных шрифтов?