首页 > 解决方案 > WPF .Net Core 3.0 中的路径

问题描述

尝试font-awesome在 WPF 应用程序中嵌入和使用字体。当字体位于/Assets/Fonts文件夹中时,以下内容在 .Net Framework 中完美运行:

<ResourceDictionary>
    <FontFamily x:Key="FontAwesomeRegular">/AppName;Component/Assets/Fonts/FA5Regular400.otf#Font Awesome 5 Free Regular</FontFamily>
</ResourceDictionary>

尝试在 .Net Core 3.0 WPF 应用程序中执行相同操作失败 - 字体未显示。我在某处读到 .Net Core 3.0 中的路径处理已更改,但无法提取那篇文章。

这似乎是一个小路径问题 - 如果有人可以帮助解决这个问题,我真的很感激。

标签: c#wpf.net-core

解决方案


如果字体的名称是“Font Awesome”并且您已将该.ttf文件作为资源包含在项目的 Assets/Fonts 文件夹中,则此方法有效:

<FontFamily x:Key="FontAwesomeRegular">pack://application:,,,/Assets/Fonts/#Font Awesome</FontFamily>

不应在包 URI 中包含文件名。


推荐阅读