我有以下字体文件。
MyFont-Regular.tffMyFont-Bold.tffMyFont-Italic.tff
我如何使用它们?

我可以做到以下几点

<TextBlock
FontFamily="/Fonts/MyFont/MyFont-Regular.ttf#My Font"
Text="This is my font"/>

如果我不想使用斜体和粗体等样式怎么办?我不能声明 My Font 由几个文件组成,每个文件都包含字体样式吗?

最佳答案

你不能。但是,您可以将自定义字体包装到样式/资源中:

<App.Resources>
    <FontFamily x:Key="CustomRegular">/Fonts/MyFont/MyFont-Regular.ttf#My Font</FontFamily>
    <FontFamily x:Key="CustomBold">/Fonts/MyFont/MyFont-Bold.ttf#My Font</FontFamily>
    <FontFamily x:Key="CustomItalic">/Fonts/MyFont/MyFont-Italic.ttf#My Font</FontFamily>
</App.Resources>

然后像这样使用它:
<TextBlock FontFamily="{StaticResource CustomItalic}">Hello world</TextBlock>

需要部分文字斜体?
<TextBlock FontFamily="{StaticResource CustomRegular}">
    <Run FontFamily="{StaticResource CustomItalic}">Hello</Run>
    <Run>World</Run>
</TextBlock>

祝你好运。

10-08 12:55