本文主要讲如何在AngularCli生成的项目中使用字体图标。

一 SVG图标准备

将需要转换为字体图标的图片转换为SVG格式。

这个让项目视觉设计师搞定即可。

二 SVG图标转Font

可以通过IconMoon网站提供的在线app实现SVG图标转Font字体文件。详细步骤如下:

步骤1:打开浏览器输入IconMoon官网,进入网站后,点击右上角紫色IcoMoonApp

说明:网站地址: https://icomoon.io/
注意:及时清除默认库图标,否则会对导入字体图标引入干扰

步骤2:点击左上角紫色图标ImportantIcons,导入所有的SVG图片文件。

Yes(代表要按原来图标顺序排序);No(代表要重新按照库已有排序),主要区别在于当前库是否有图标,否则会影响顺序。如若没有图标(之前图标清零),无影响。导入新增图标(XXX.svg)文件,步骤如上。

步骤3:点击右下角Generate Font进入图标详细编辑页面。

点击图标,对于其进行属性设置:

设置tags和names,尽量为英文简写,设置好,后关闭页面,检查顺序是否有序,尽量别空位,保证以后可以和入更多图标。

步骤4:设置字体文件名字和class前缀,点击右下角Download旁边配置齿轮图标:

在打开的配置界面,完成Fony Name和Class Prefix配置,如下图:

步骤5:点击右下角Font download,完成字体图标文件下载。

三 将Font文件引入AngularCli项目

上边步骤中下载下来的Font压缩文件目录如下:

我们要用到的主要是fonts文件夹下文件和style.css,按下边步骤完成将这些文件合入AngularCli项目。

1)首先将fonts文件夹直接拷贝到AngularCli项目的assets目录下:

2)在AngularCli项目的src目录下,新建font.less文件,将style.css中内容拷贝到font.less中,并修改最上边@font-face中引用字体图标文件的路径:

3)在AngularCli项目中src目录下的styles.less中,引入font.less:

四 引用和使用字体图标

在font.less中有对应图标的class,可以在DOM中直接添加这些class就可以显示对应的图标。

示例:

如下是font.less中的图标样式类:

   .dp-fontDLI:before {
content: "\e903";
color: #ffa55f;
}
.dp-fontDWS:before {
content: "\e904";
color: #54aefb;
}

在HTML中使用:

   <div class="dp-fontDWS"></div>
<div class="dp-fontDLI"></div>

显示效果:

五 后续更新字体图标

 新增图标步骤:

1)将之前的字体图标文件中的.svg文件导入到IconMoon 网站中;

2)将新增图标的SVG文件导入到IconMoon网站中;

3)选择之前的图标和新增图标,生成和下载Icon(详细步骤略过,请查看上边详细说明)。

参考资料&内容来源

IconMoon官网:https://icomoon.io/

AngularCli项目中添加字体图标(Font)详解的更多相关文章

  1. UWP开发之Mvvmlight实践一:如何在项目中添加使用Mvvmlight(图文详解)

    最近一直在做UWP开发,为了节省成本等等接触到MVVMlight,觉得有必要发点时间研究它的用法与实现原理才行.如果有问题的地方或者有好的建议欢迎提出来. 随着移动开发的热门,Mvvmlight在An ...

  2. 使用iconfont管理项目中的字体图标

    先来说说字体图标的好处: 很容易任意地缩放: 很容易地改变颜色: 很容易地产生阴影: 可以拥有透明效果: 一般来说,有先进的浏览器支持: 可以使用CSS来装饰(可以得到CSS很好支持): 可以快速转化 ...

  3. log4net项目中如何配置,以下详解

    log4net.config配置文件 <?xml version="1.0" encoding="utf-8"?> <log4net debu ...

  4. web项目中的执行流程参数传递详解

    还是从这个图开始讲解: struts2中有一个存放数据的中心:值栈.(值栈里面有map和对象栈) 首先:值栈的作用范围是一个请求:request作用域(一个请求是代表的一个过程,即页面点击到数据返回到 ...

  5. 如何在移动端app中应用字体图标icon fonts (转)

    原文: http://www.cnblogs.com/willian/p/4166757.html?utm_source=tuicool&utm_medium=referral How to ...

  6. 如何在移动端app中应用字体图标icon fonts

    How to use icon fonts in your mobile apps 在任何APP设计中实现可图形的矢量缩放最完美的方式是使用字体图标. 移动端的设计变的越来越复杂.原因在于多样的屏幕尺 ...

  7. 如何在微信小程序中使用字体图标

    微信小程序中,在image标签里,可以在src中引用本地文件,但是background设置背景图或者使用字体图标的时候,却不能引用本地文件,只能用url地址的图片或字体,或者使用base64编码后的格 ...

  8. CSS3:不可思议的border属性&Web字体图标Font Awesome

     CSS3:不可思议的border属性 转载至——译文:不可思议的CSS border属性 原文:Magic of CSS border property Web字体图标Font Awesome 转载 ...

  9. Entity Framework 的小实例:在项目中添加一个实体类,并做插入操作

    Entity Framework 的小实例:在项目中添加一个实体类,并做插入操作 1>. 创建一个控制台程序2>. 添加一个 ADO.NET实体数据模型,选择对应的数据库与表(Studen ...

随机推荐

  1. Azure Storage Blob Go SDK示例

    简介 前面一篇博客介绍了关于Azure ManagerAPI Go SDK的使用,本篇继续介绍使用Blob Go SDK 操作中国区Azure Blob. SDK下载: go get github.c ...

  2. VMware12.0下安装CentOS-6.9-x86_64-bin-DVD.iso

    使用的是vmware workstation 12 pro 创建虚拟机 注意上面的 安装程序光盘镜象文件(iso)(M): 是我之前配置,现在可以不做任何处理 此处使用的是centos的64位 在创建 ...

  3. 【精】iOS GCD 具体解释

    一.介绍 1.什么是GCD? Grand Central Dispatch.是苹果公司开发的一套多核编程的底层API. GCD首次公布在Mac OS X 10.6,iOS4及以上也可用.GCD存在于l ...

  4. windows操作系统记事本保存操作时间、字符映射表的打开、步骤记录器使用

    记事本自动记录修改时间 你有用记事本记账或写日记的习惯吗?其实在记事本的文档开头输入".LOG"(无引号,字母为大写),之后记录内容并保存,这样以后打开就会看到之前每次修改的时间了 ...

  5. Atitit.提升api兼容性的方法 v3 q326

    Atitit.提升api兼容性的方法 v3 q326 1. Atitit.兼容性的“一加三”策略1 2. 2. 扩展表模式1 3. 3. 同时运行模式1 3.1. 3.1. 完美的后向兼容性2 3.2 ...

  6. Python内存管理:垃圾回收

    http://blog.csdn.net/pipisorry/article/details/39647931 Python GC主要使用引用计数(reference counting)来跟踪和回收垃 ...

  7. 【HDU-5246】超级赛亚ACMer(贪心)

    之前用了个nlogn的算法超时了.仅仅能改成n的算法了 大题贪心思路就是 对每一个人的能力值从小到大进行排序,当前能力值为now,那么我们找到一个人的能力使得这个能力值 <= now.now + ...

  8. DM36x IPNC OSD显示中文 --- 实战篇

    通过数据准备篇,将数据准备好后,其实剩下的工作已经很简单了,通过以下几个步骤即可把一个中文显示在OSD画面上:1. 使用SWOSD_setBmpchangeWinXYPrm函数设置好OSD显示坐标位置 ...

  9. java - day07 - PrimeNum

    判断质数 package day06; import java.util.Scanner; //验证质数 public class primeNum { public static void main ...

  10. Windows手动安装MySQL

    由于MySQL 5.6(也许5.5)以后去掉了Server Instance Configuration Wizard(服务实例配置向导),于是msi版变成了和zip版一样,要手动配置. * 假定安装 ...