1

问题:

1.微信小程序不能随意使用网络资源,如字体,css文件等

2.不能在小程序中使用字体文件

3.不能使用background-position背景图片定位来使用内部png图片

下面就介绍一下如何制作base64字体图标。

简易方式:

通过两个在线工具,很容易地生成base64加密的字体图标。

第一步:在线选择图标,生成字体及CSS文件

浏览器打开:https://icomoon.io/app/#/select

选择图标。觉得不够的话,在页面左下角点击"Add Icon From Library...",添加字体库,可以选择免费的,常用的如FontAwsome字体。
选择图标
选择好图标后,点击页面右下角“Generate Font” ->Download,下载字体文件包icomoon.zip
生成图标

第二步:在线转换base64编码字体

解压icomoon.zip

浏览器打开:https://transfonter.org/
转换字体
点击“Add Fonts"按钮,上传解压文件夹中的字体文件:fonts/icomoon.ttf

在下面选项中,将Family support,Base64 encode两项设置为On,Formats一栏可只勾选woff2(生成文件的字节数少)

点击”Convert“按钮后,会在下面出现一个download链接,点击下载(transfonter.org-20180805-033630.zip)

第三步:合成小程序使用的 .wxss文件

在小程序工程中新建图标字体样式文件,如common/icons.wxss

打开第二步下载的文件包中的stylesheet.css,将@font-face内容拷贝到小程序的icons.wxss中

打开第一步下载的文件包中的style.css,将[class^="icon-"] 及以下的内容拷贝到icons.wxss中

第四步:使用字体图标

在wxml文件中使用view标签或image标签,添加class为wxss文件中的类名即可,若需要改变图标字体大小可以通过font-size来改变:

<view class='icon-search' style='font-size:64rpx'></view>

后记:

有些字体图标显示不出来,可能是转换字体时的输出选项有关。

DIY图标字体

主要是采用字体制作工具,如Fontforge等制作矢量字体文件,然后可以借助icomoon.io网站导入,后面的步骤就与前面描述的一样了。


Joysong
14 声望0 粉丝