svg图片上传到iconfont为空白

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了svg图片上传到iconfont为空白相关的知识,希望对你有一定的参考价值。

参考技术A

近期项目需求,需要把UI设计的图片转为图标,且合并到阿里现有的项目图标中。试了好多次,SVG上传到阿里图标的都是空白的;

  

 实现方案:

  

 1.准备好图片转换工具inkscape;

  

 2.登录阿里图标;

  

 1.inkscape 0.92.3的中文版安装教程如下:

  

 百度网盘:  https://pan.baidu.com/s/1sVzQiKcrXZf1SO93rU9Jmg

 

  

 提取码:swxf

                                                                                                                                                                                                                                                  

 2.inkscape 0.92.3使用教程如下(最重要,不想图标上传后出现空白的,请仔细看哈):

fontcreator制作iconfont(包含两个教程)

第一步

在AI中画好矢量图,或者是在PS中将纯色的图片存成PNG格式,最好是放大很多倍的纯色图片。因为导入到fontcreator中会显得很小,如果不是矢量,图片拉大后就会有锯齿状。

第二步

选中AI中的矢量图形复制,打开fontcreator,选择一个已经安装过的字体或是选择新建工程,这里采用新建工程来演示。

一般前几个空着的不要动,选择A后点击插入字形就会有这样一个空白的格子,选择这个空白的格子右键
技术分享

右键然后选择属性,代码点里可以从$E000开始往后写,写完后记得点击右边的闪电标志,进行检索匹配,如果没有被占用则这个代码点就可以用,名称里可以填写自己想要填写的名字。最后按应用,然后双击这个空格开始编辑,记得编辑完后,在属性里将左右边轴设置为0,这样才可以在页面显示出来。

技术分享

完成后的状态如下

技术分享

该字体的unicode码是$F112,名称是NAME
做完之后导出字体,在fontcreator中可以导出woff及otf格式的字体,如果需要支持其他浏览器,则选择线上转换字体格式。

第三步

在css中引用字体

@font-face {
    font-family: ‘emotion‘;
    src: url(‘emotion.eot‘); /* IE9*/
    src: url(‘emotion.eot?#iefix‘) format(‘embedded-opentype‘), /* IE6-IE8 */
         url(‘emotion.woff‘) format(‘woff‘), /* chrome、firefox */
         url(‘emotion.ttf‘)  format(‘truetype‘), /* chrome、firefox、opera、Safari, Android, iOS 4.2+*/
         url(‘emotion.svg#svgFontName‘) format(‘svg‘); /*  iOS 4.1- */
        }
.equip-icon{
  font-family:"emotion"; 
}

引用完之后可以在CSS里使用伪类这样写

.equip-icon:before {
content: "\F112";
}

 

实际页面效果如图,忽略底下的蓝色圆,这块黑色的才是。( ̄▽ ̄”)
技术分享
然后就愉快的使用吧,iconfont适合纯色的小图标,个人觉得比较适合移动端界面的设计。

 

 

 

 

 

图标字体(IconFont)制作

图标字体(IconFont)介绍

图标字体(IconFont)现在越来越被广泛使用,大大提高了网页的多样化,解决了视网膜屏幕失真的问题。 据说微软从IE4开始支持的这个私有方法(@font-face),后来W3在CSS2中也引入这个方法,但是后来CSS2.1又被删除了,真是遗憾。直到CSS3,又一次引入,这真是个好消息。
详细见:http://www.w3.org/TR/css3-fonts/

不过经常会被问到,移动端用没问题,PC上IE可以了,我可以负责任的说:当然可以。原因上面说了,@font-face最初是微软IE里的私有方法,所以从IE4开始已经支持(我没测过哦),不过现在网站最低支持到IE6而且IE6已被优雅降级到可以正常浏览、使用网站,UI还原度已不值得花大力度去做兼容了,况且在实际项目中IE6中使用确实是没问题的。

一句话,现在可以放心大胆的在PC、移动端使用图标字体(Iconfont)了。
了解更多可看国内最大最全的适量图标库阿里IconFont网站。

图标字体(Iconfont)制作

一. IcoMoon

这个教程一搜一大把,是很方便快捷的一种方式,提供上传、编辑或者选择IcoMoon-Free下载可以直接拿来用了。
网址:https://icomoon.io/app/

二. 阿里IconFont

和IconFont提供类似功能
网址:http://iconfont.cn/

上面两种方法优点是方便快捷,但或许有时候并不能满足你的个性化需求。
比如:仅需要替换一个已经有图标并保持字符代码不变或者更多个性化需求的,或许你可以看看下面的方法。

三. 字体编辑软件制作

    1. 首先准备一下软件,除了PS,AI,还需要High-Logic FontCreator。 FontCreator 是一个强大的字体编辑软件。 官网下载:http://www.high-logic.com/font-editor/fontcreator/download.html
    2. PS导出图标路径到AI (图标一定要是路径)
      技术分享

    3. AI打开导出的图标路径(打开有可能是空白,可以全选找到并添上颜色)
      技术分享

    4. 打开FontCreator,新建或打开字体
      技术分享

    5. 添加图标字形或者双击要编辑的图标字形
      技术分享

    6. 从AI里复制图标路径到FontCreator里,调整大小位置
      可参考(http://mux.alimama.com/posts/1025)
      技术分享

    7. 导出字体,只有TTF和WOFF两种格式
      技术分享

    8. EverythingFonts把TTF转换SVG和EOT, TTF2SVG TTF2EOT
      技术分享

    9. 好了,收工。


















以上是关于svg图片上传到iconfont为空白的主要内容,如果未能解决你的问题,请参考以下文章

在AI里面做好的svg图片,导出上传至iconfont,显示有问题

iconfont svg怎么引入?

iconfont svg 怎么引入

为啥设计好的图标svg文件上传到iconfont后,显示正常,但是再下载到本地打开代码就显示不全了呢?

精灵图svg icon区别

iconMoon:字体图标(iconfont)解决方案及使用教程