解决uniapp使用阿里巴巴矢量图库,在移动端不显示的问题
创始人
2024-11-15 08:39:54

在使用阿里巴巴矢量图库制作icon字体图标时,发现H5端能正常显示,而运行在手机上却不显示图标,找了好几个办法终于发现了原因:

  • 在ttf字体文件小于 40kb 时,uni-app 会自动将其转化为 base64 格式;大于则需要自己转好文件为base64使用
  • 使用方法如下:
  • 1.将阿里巴巴图库icon下载至本地,得到iconfont.cssiconfont.ttf两个文件;将iconfont.css放入static下自己新建的font文件夹
  • 2.将iconfont.ttf文件转成base64

转ttf的网址:/zb_users/upload/2024/csdn/www.giftofspeed.com/base64-encoder/

  • 3.将得到的base64放入iconfont.css 中并修改成如下,仅需要改src部分,不要全照搬!!!
@font-face {   font-family: "iconfont"; /* Project id 4572225 */   /* src: url('./static/font/iconfont.ttf') format('truetype'); 方法一不显示  	url('https//at.alicdn.com/t/c/font_4572225_rsnmkumllk.ttf?t=1722246508943') format('truetype');方法二,可行,  	但是阿里巴巴图库提示【在线链接服务仅供平台体验和调试使用,平台不承诺服务的稳定性,企业客户需下载字体包自行发布使用  	并做好备份】;所以不推荐  */   src:   /* 不显示原因:在字体文件小于 40kb 时,uni-app 会自动将其转化为 base64 格式;大于需要自己转好文件使用 */    /* 如果使用小于40kb还是不显示,全局引用的iconfont.css可能与阿里巴巴矢量图库的CSS文件中一些全局定义的样式,    导致组件或页面之间相互干扰,使用转base64也能解决该问题 */   /* 方法三:.ttf文件转化为 base64 格式,转ttf的网址/zb_users/upload/2024/csdn/www.giftofspeed.com/base64-encoder/ */   url('data:font/truetype;charset=utf-8;base64,得到的base64编码') format('truetype'); }  .iconfont {   font-family: "iconfont" !important;   font-size: 16px;   font-style: normal;   -webkit-font-smoothing: antialiased;   -moz-osx-font-smoothing: grayscale; }  .icon-weixin:before {   content: "\e6ea";   font-size: 20px;   margin:0 10rpx;   color: #4cbf00; } 
  • 4.在App.vue页面导入全局使用
 
  • 5.在需要的页面使用图标
  

相关内容

热门资讯

裸辞做“一人公司”,我后悔了 去年这个时候,一位以色列程序员正在东南亚旅行。他顺手把一个在脑子里转了很久的想法做成了产品,一个让任...
南京建成国内首个Pre-6G试... 4月21日,2026全球6G技术与产业生态大会在南京开幕。全息互动技术展台前,一名远在北京的工作人员...
超梵求职受邀参加“2025抖音... 超梵求职受邀参加“2025抖音巨量引擎成人教育行业生态大会”,探讨分享优质内容传播,服务万千学员。 ...
摩托罗拉Razr 2026(R... IT之家 4 月 22 日消息,摩托罗拉宣布新一代 Razr 折叠手机将于 4 月 29 日在美国发...
库克卸任,特纳斯领航:苹果新纪... 苹果首席执行官蒂姆·库克将卸任,硬件工程主管约翰·特纳斯将接任,苹果公司今天宣布此事。 库克将在夏季...