学习WPF——使用Font-Awesome图标字体
原文:学习WPF——使用Font-Awesome图标字体

图标字体介绍
在介绍图标字体之前,不得不介绍图标格式ICON
ICON是一种图标格式,我们操作系统中各种应用程序都包含一个图标
比如QQ程序的图标是一个可爱的企鹅,我的电脑是一个显示器图标
----------------
一个图标文件是扩展名为.ICO或者ICON的文件
直到现在图标文件还是在计算机程序中随处可见
但有时候需要在不失真的情况下放大图标
因为ICON本身与JPEG\PNG格式的图形文件差异不大,也是非矢量图形
所以图标文件就很难满足这种需求
----------------
为了解决这种问题,就有作者把图形信息做到字体中去
我们今天要使用的Font-Awesome就是这种技术形式的一种实现
(当然还有其他办法解决这种问题,比如用css3绘制图标,但那种技术形式就比较难应用于客户端程序中了)
----------------
常见的图标字体有很多,但我认为Font-Awesome是迄今为止最出色的图标字体(没有之一)
图标多、图标美观、兼容各种应用场景是其最主要的有点

WPF中使用Font-Awesome图标字体

我曾经在Qt应用程序中使用过Font-Awesome图标字体,用起来非常方便,展现效果也一如预期
但在WPF应用程序中使用图标字体就会显示成一个方框,如下图
后来,才找到解决办法:
首先到Font-Awesome官方网站下载字体程序
下载到的压缩包,解压后获得图标字体文件
然后把字体文件拷贝到项目中
并设置“复制到输出目录”为“如果较新则复制”
然后编辑程序代码:
<Window x:Class="WpfApplication1.MainWindow" 
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" 
Title="MainWindow">

<Window.Resources> 

<Style x:Key="FontAwesome">
<Setter Property="TextElement.FontFamily" Value="pack://application:,,,/#FontAwesome" />
<Setter Property="TextBlock.Width" Value="100"></Setter>
<Setter Property="TextBlock.Height" Value="100"></Setter>
<Setter Property="TextBlock.TextAlignment" Value="Center"></Setter>
<Setter Property="TextBlock.FontSize" Value="60"></Setter>
<Setter Property="TextBlock.Foreground" Value="Green"></Setter>
</Style>
</Window.Resources>

<WrapPanel Margin="12">

<TextBlock Text="" Style="{DynamicResource FontAwesome}" />
<TextBlock Text="" Style="{DynamicResource FontAwesome}" />
<TextBlock Text="" Style="{DynamicResource FontAwesome}" />
<TextBlock Text="" Style="{DynamicResource FontAwesome}" />
<TextBlock Text="" Style="{DynamicResource FontAwesome}" />
<TextBlock Text="" Style="{DynamicResource FontAwesome}" />
<TextBlock Text="" Style="{DynamicResource FontAwesome}" />
<TextBlock Text="" Style="{DynamicResource FontAwesome}" />
<TextBlock Text="" Style="{DynamicResource FontAwesome}" />
<TextBlock Text="" Style="{DynamicResource FontAwesome}" />
</WrapPanel>
</Window>
运行程序,看到图标,大功告成

修改记录

2015-12-26:编写样例程序,完成部分文章内容
2014-12-29:修改部分内容,修改文档格式

参考资料

add-icon-font-in-wpf
changing-font-icon-in-wpf-using-font-awesome
posted on 2019-03-08 22:03 NET未来之路 阅读(...) 评论(...) 编辑 收藏

转载于:https://www.cnblogs.com/lonelyxmas/p/10498548.html

学习WPF——使用Font-Awesome图标字体相关推荐

  1. 网页使用Font Awesome图标字体时,css定义 content 属性

    网页使用Font Awesome图标字体时,css定义 content 属性必不可少,如下所示: .icon:before {     content: '\f005';     font-famil ...

  2. 在Unity中使用Font Awesome图标字体

    Font Awesome 是一个前端用到的图标字体,简单说是个特殊的字体,里面不是文字都是图标. 用这种方法可以简单的做出即使放大很多也不会出现锯齿的图标,不过好像图标不需要放大很多的说.很好玩就是了 ...

  3. Qt中使用Font Awesome图标字体库

    一.简介 Font Awesome号称是为Bootstrap设计的完美图标字体,经常出现在各类网页中,非常流行. 官网: https://fontawesome.com/ 中文网: http://ww ...

  4. Font Awesome 图标字体

    Font Awesome 是为Bootstrap设计的 什么是Bootstrap? Bootstrap 是一个用于快速开发 Web 应用程序和网站的前端框架. Bootstrap 是基于 HTML.C ...

  5. WPF、C# iconfont图标字体只显示框框

    在我们写C# 或者WPF 程序的时候,引入字体图标的时候,新手会出现下面这个问题: 下面说下常见的两个原因吧: 1.是文件路径定义的不对: <TextBlock Text="&quo ...

  6. Font Awesome图标字体的代码列表

    https://www.bootcss.com/p/font-awesome/design.html

  7. HTML字体以及图标字体iconfont、Font Awesome的使用

    字体 • 通过font-family可以指定标签中文字使用的字体. • 例如: p{font-family:Arial} ​ 上边这行代码指定了p标签中使用名为arial作为字体 • 一般来说只有用户 ...

  8. 如何应用font Awesome矢量字体图标介绍

    最近做项目开发的时候,一开始做的时候,网页图标icon都是网上现找的,样式不统一先不说,统统都要引入就很麻烦了,要写各种图片路径,简直烦的不要不要的,后来不经意间接触到矢量图标这个东西,一下子来了兴趣 ...

  9. 01_MUI之Boilerplate中:HTML5示例,动态组件,自定义字体示例,自定义字体示例,图标字体示例

     1安装HBuilder5.0.0,安装后的界面截图如下: 2 按照https://www.muicss.com/docs/v1/css-js/boilerplate-html中的说明,创建上图的 ...

最新文章

  1. 图像去噪--Noise2Noise: Learning Image Restoration without Clean Data
  2. 触发器和java的关系_触发器-1 - java ee spring - 博客园
  3. 计算机启动到安全模式,计算机启动每次都进入安全模式怎么办
  4. 给谷歌浏览器安装vue调试工具:vue-devtools
  5. linux守护进程fifo,linux守护进程配置文件
  6. LeetCode-114: 二叉树展开为链表
  7. Python Windows安装
  8. 《MATLAB信号处理超级学习手册》——2.7 本章小结
  9. 大数据分析方法有哪些
  10. 实时帧数手机_小米部分高刷新率机型吃鸡强制开启120帧
  11. java 数据结构 pdf_数据结构java版本.pdf
  12. 仿直播礼物涂鸦/屏幕礼物涂鸦动画
  13. 龙卷风袭击广东致6死215伤 广州停
  14. 模式识别谱聚类matlab,基因表达谱聚类分析
  15. Springboot毕设项目基于协同过滤算法的体育用品推荐系统9s658java+VUE+Mybatis+Maven+Mysql+sprnig)
  16. Hibernate基于JAP注解开发
  17. 微信抢票开发实践总结
  18. nginx如何替换ssl证书
  19. AriaNG保存服务器信息,安装Aria2+AriaNg
  20. 华为怎么显示返回按键_你见过这台会跑的“华为手机”吗?深度体验极星Polestar 2车机系统...

热门文章

  1. 一个十年SAP CRM老司机对产品主数据的理解
  2. 使用JavaScript正则表达式解析markdown里的图片标签
  3. SAP成都研究院Sunshine:我的C4C实习感受和保研之路
  4. php发送验证码短信,php发送短信验证码
  5. 上下界网络流-无源汇可行流与有源汇最大流
  6. 400 bad request 原因_煤气柜腐蚀原因及防腐措施
  7. win7 asp虚拟服务器,win7怎么利用ASP获取服务器IP地址 win7利用ASP获取服务器IP地址教程...
  8. codis配置_codis 源码理解
  9. JAVA复习5(TreeSet)
  10. Sharepoint java sdk_java – 使用JAX-WS将文件保存到Sharepoint服务器