C#如何使用ttf文件中的图标
在做CS开发的时候,经常会需要为按钮,或者一些控件添加一些图标。
如果使用image图片的方式,来为控件添加图标,比较麻烦(因为要费劲八力的搜各种图片,想办法下载下来,调整尺寸,甚至还需要PS处理一下)。
其实对于一些通用性的图标需求,完全可以用图标字体库,来解决。
比如微软提供的【Segoe fonts】图标库,下载下来就是一个ttf的文件。里面包含了很多常用的一些图标。
我们在想为控件添加图标的时候,可以很简单的通过修改控件的图标unicode码,来设置控件的图标。
下面以【Segoe fonts】为例,来简单说一下使用的步骤:
- 下载【Segoe fonts】图标库文件
- 解压出图标库压缩包之后,得到下列文件
![]()  - 将上图中的【SegMDL2.ttf】文件,复制到项目中 
![]()  - 然后修改【SegMDL2.ttf】文件的属性,将其“生成操作”改为“资源” 
![]() 
- 
然后就可以在项目中使用这个ttf文件中的所有图标了 
- 在WPF中,使用ttf图标时,分两种情况:
-   第一种,直接前端XAML代码固定写好图标:
-   
<TextBlock FontFamily="pack://application:,,,/WPF_Blog_Test;component/Fonts/SegMDL2.ttf#Segoe MDL2 Assets" FontSize="50" Foreground="Red" Text="" /> 后面的Text设定的是图标的unicode编码。其中【&#x】是XAML中,设定图标的前缀,后面的【E702】是图标的unicode编码 
 
-   
-   第二种,在后台C#代码中动态调整控件的图标:
-   
this.Btn_MaxSize.Text = "\uE922"; 此处更改控件的图标的时候,就需要以【\u】为前缀,【\u】代表unicode编码。 
 
-   
 
-   第一种,直接前端XAML代码固定写好图标:
 
                    
                 
 

 
                
            
         
 浙公网安备 33010602011771号
浙公网安备 33010602011771号