WPF和Font使用连字符图标的可怕问题

WPF and FontAwesome problem with hyphenated icons(WPF和Font使用连字符图标的可怕问题)
本文介绍了WPF和Font使用连字符图标的可怕问题的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在我的WPF应用中使用FontAwesom作为图标。

单名称图标一切正常,但每当我尝试使用带连字符的图标名称时,字体都无法理解这一点,要么不绘制任何内容,要么分别绘制两个图标(如果存在)(如果存在)。

这将绘制用户图标。太好了。

<!--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.您可以在项目的Package NuGet Manager中安装FontAwesome.WPF

2.将xmlns:fa="http://schemas.fontawesome.io/icons/"导入您的XAML代码。

3.在TextBlock中使用它,如下所示:

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

方法二:

1.在fontawesome下载字体棒极了。

2.解压缩文件并将字体作为资源复制到项目中。路径为Fontfa-regular-400.ttf

3.在Windows中添加FontAwesome样式。资源:

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

4.在TextBlock中使用样式,并将用户圈的Unicode代码编写为如下文本:

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

也许您可以参考这两种方法来实现您的程序。

这篇关于WPF和Font使用连字符图标的可怕问题的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!

本站部分内容来源互联网,如果有图片或者内容侵犯您的权益请联系我们删除!

相关文档推荐

DispatcherQueue null when trying to update Ui property in ViewModel(尝试更新ViewModel中的Ui属性时DispatcherQueue为空)
Drawing over all windows on multiple monitors(在多个监视器上绘制所有窗口)
Programmatically show the desktop(以编程方式显示桌面)
c# Generic Setlt;Tgt; implementation to access objects by type(按类型访问对象的C#泛型集实现)
InvalidOperationException When using Context Injection in ASP.Net Core(在ASP.NET核心中使用上下文注入时发生InvalidOperationException)
LINQ many-to-many relationship, how to write a correct WHERE clause?(LINQ多对多关系,如何写一个正确的WHERE子句?)