连字符图标的 WPF 和 FontAwesome 问题

WPF and FontAwesome problem with hyphenated icons

我在我的 WPF 应用程序中使用 FontAwesome 作为图标。

对于单名称图标,一切都按预期工作,但每当我尝试使用带连字符的图标名称时,字体不理解这一点,要么不绘制任何东西,要么绘制两个图标(左侧和右侧)连字符)单独(如果它们存在)。

这绘制了用户图标。太棒了

<!--FontAwesome Font applied in style-->
<TextBlock Style="{DynamicResource mainButtonImage}" Margin="5" Text="user"></TextBlock>

这会绘制用户图标、一个“-”和一个圆圈图标。应该是“用户圈子”图标。

<TextBlock Style="{DynamicResource mainButtonImage}" Margin="5" Text="user-circle"></TextBlock>

应该是这样画的:https://fontawesome.com/icons/user-circle?style=regular

当我在系统上的记事本中进行测试时,它按预期工作。

有什么想法吗?

我通过以下两种方式实现了“用户圈子”图标:

方法一:

1.You 可以在项目的 Package NuGet Manager.

中安装 FontAwesome.WPF

2.Import xmlns:fa="http://schemas.fontawesome.io/icons/" 到您的 XAML 代码中。

3.Use 像这样将其放入您的 TextBlock:

<fa:FontAwesome Icon="UserCircle" FontSize="100"></fa:FontAwesome>

方法二:

1.Download 字体很棒 fontawesome

2.Unzip 文件并将字体作为资源复制到项目中。路径是\Font\fa-regular-400.ttf.

3.Add FontAwesome Window.Resources 中的样式:

<Window.Resources>
        <Style x:Key="FontAwesome">
            <Setter Property="TextElement.FontFamily" Value="pack://application:,,,/Font/#Font Awesome 5 Free Regular" /> 
        </Style>
    </Window.Resources>

4.Use在TextBlock中添加样式,在Text中写入user-circle的Unicode代码如下:

<TextBlock Text="&#xf2bd;" Style="{DynamicResource FontAwesome}" />

或许你可以参考这两种方法来实现你的程序