情况
-我在WPF应用程序中创建了一个文件夹“ Fonts”,并添加了5种字体。
-然后,我在“资源”中添加了字体。
XAML(我尝试将pack:app ,, ..写入其中,但没有帮助)
<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
<FontFamily x:Key="Default">/Design/Fonts/#arial</FontFamily>
<FontFamily x:Key="Rounded">/Design/Fonts/#BUNGASAI</FontFamily>
<FontFamily x:Key="BarcodeCode39">/Design/Fonts/#Code39r</FontFamily>
<FontFamily x:Key="Barcode3of9X">/Design/Fonts/#FRE3OF9X</FontFamily>
<FontFamily x:Key="Barcode3of9">/Design/Fonts/#FREE3OF9</FontFamily>
</ResourceDictionary>
问题
问题是它对于Arial和Bungasai或其他普通字体都非常有效,但是每当我尝试使用这些“条形码”字体时,它就会显示arial。
MAYBE相关信息
这就是我在
中使用字体的方式XAML
不起作用:
<TextBlock Name="BarcodeContent"
FontFamily="{StaticResource BarcodeCode39}"/>
完美运行:
<TextBlock Name="BarcodeContent"
FontFamily="{StaticResource Rounded}"/>
答案 0 :(得分:0)
使用ttf文件时,用于字体的名称(在#之后)是字体名称。可以但不必与文件名相同。
例如。
我们的游戏使用了一些自定义的维多利亚风格的字体。其中之一是ephinol.ttf。
如果我右键单击文件浏览器中的ephinol.ttf文件并选择预览,我会看到一个字体对话框,其中包括不同大小的字体示例。
顶部是字体的全名。
哪个是Ephinol WF。
因此,我将使用#Ephinol WF而不是#Ephinol
但是,我不这样做。
此刻我要做的是安装字体文件。然后,我不需要使用包符号来使用字体。我这样做是为了确保不会发生内存泄漏。
否则,我想使用完整的文件路径或另一轮工作(请参阅链接)。
这是一个很小的内存泄漏,但这是每次使用。
https://github.com/MaterialDesignInXAML/MaterialDesignInXamlToolkit/issues/746