微信小程序里使用SVG矢量图标方法详解

所属分类: 网络编程 / 相关技巧 阅读数: 746
收藏 0 赞 0 分享

在微信小程序开发过程中需要在小程序里使用SVG矢量图标,至于为什么要使用SVG图标相信看到这篇文章的你应该明白,如果你不明白请百度一下

微信小程序里使用SVG矢量图标有2种引入方法:

一、SVG图标转换为BASE64编码

使用 http://tools.jb51.net/transcoding/img2base64 工具把需要引入的SVG图标转换成BASE64编码

 

注意:生成BASE64编码时需要把开头的 data:image/svg; 修改成 data:image/svg+xml; 这个在线工具的问题,使用其它在线BASE64编码功能时大家一定要注意

复制转换后的编码至wxss文件中相应的 background-image:url("SVG图标BASE64编码") 中,如下代码

.svg{background:url("data:svg+xml;base64,iVBORw0KGgoAAAANSUhEUgAAAIwAAACMCAIAAAAhotZpAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAA3ZpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+2T3kLSMg8LC1QJzR/Dv3t/jrmSE9K/tTuKTbVJF1LQ93QcQG6L6nPEkWqECzSEhhiahTSNGLN0KKH4yG1CDLmhCN8EMskTdhAEXqaofsy9LWqNOCmeEgtgJRZZOF4EA0DlnSoC642kfxdQ+o+S1IOeURyXlRtSxVlJN3Ykve1Eaqwyvs2WuhQYC8Sq7nVDhYb6QhzJlL9rxkltKKokZKLdEhHB8l8OdRUNG6qsQ9sclBHkZ6k7Ojc0jJaSfLqYCG+g3h1E99dDnm+P2oJetK2VLClE7LNtigHIBZI8mpOiGb0EebGhojVQl1xj5FXRSITP8YpRBpYFhiOKJlgJq9oKs3xhA+kB5UvppaOxhxJ0zGxMxDMkDSTZkiaIWkmRUn6fwEGAE2xLmu6HJtTAAAAAElFTkSuQmCC");
width:100rpx;
height:100rpx;
background-size: contain
}

同时还需要添加 background-size: contain 属性使图标能根据元素大小自动缩放

然后在wxss对应的wxml文件中添加

 <view class="svg">
 </view>

编译后的效果

 

二、使用运程地址引入SVG图标

把SVG图标上传到网站服务器上,在浏览器中输入SVG图标地址测试是否能正常打开

 

复制SVG图标地址到  background-image:url(SVG图标URL地址) 如下

.svg{background:url(http://mt.com/coding.svg);
 width:100rpx;
 height:100rpx;
}

 编译后的效果

 

总结:

第一种方法直接把SVG图标BASE64编码放到WXSS文件内,这样做会大大增加微信小程序的体积,如果要更换图标还需要重新编译上传,不推荐

第二种方法相比第一种方法不会增加小程序的体积,需要更换图标时上传到服务器即可,非常灵活,推荐使用第二种方法

更多微信小程序开发文章请点击下方相关文章查阅

更多精彩内容其他人还在看

StringBuider 在什么条件下、如何使用效率更高

都说 StringBuilder 在处理字符串拼接上效率要强于 String,但有时候我们的理解可能会存在一定的偏差。今天小编给大家带来一篇教程关于StringBuider 在什么条件下、如何使用效率更高?感兴趣的朋友一起看看吧
收藏 0 赞 0 分享

2020年最火的6种编程语言推荐

当下计算机编程语言总数达到好几万种,但是最流行的编程语言有哪些呢,今天,小编就给大家盘点一下2020年很受欢迎的编程语言,感兴趣的朋友一起看看吧
收藏 0 赞 0 分享

遵守这些原则让你开发效率提高一倍(收藏)

这篇文章主要介绍了遵守这些原则让你开发效率提高一倍,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
收藏 0 赞 0 分享

使用idea 去除 html 代码前的行号和空行的方法详解

这篇文章主要介绍了使用idea 去除 html 代码前的行号和空行,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
收藏 0 赞 0 分享

云开发 VSCode 插件 Cloudbase Toolkit 的正确打开方式及应用场景分析

Tencent CloudBase Toolkit 是云开发的 VS Code(Visual Studio Code)插件。这篇文章主要介绍了云开发 VSCode 插件 Cloudbase Toolkit 的正确打开方式,需要的朋友可以参考下
收藏 0 赞 0 分享

12个Visual Studio调试效率技巧(小结)

这篇文章主要介绍了12个Visual Studio调试效率技巧,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
收藏 0 赞 0 分享

fiddler抓包小技巧之自动保存抓包数据的实现方法分析【可根据需求过滤】

这篇文章主要介绍了fiddler抓包小技巧之自动保存抓包数据的实现方法,较为详细的分析了fiddler自动保存抓包数据及根据需求过滤相关操作技巧,需要的朋友可以参考下
收藏 0 赞 0 分享

解决IDEA中编辑HTML格式文件不自动缩进问题

这篇文章主要介绍了解决IDEA中编辑HTML格式文件不自动缩进问题,本文内容简短,解决方法给大家提出了,需要的朋友可以参考下
收藏 0 赞 0 分享

vsCode中配置setings.json的技巧

本文给大家分享的是一个在vsCode中配置好的setings.json的样例,可以给大家一个参考,有需要的小伙伴可以来看下
收藏 0 赞 0 分享

全网最详细的vscode基础教程

vscode全称为visual studio code,是微软旗下一款非常优秀的跨平台代码编辑软件。vscode 中文版集成了大部分代码编辑的器的优点,集成GIT、代码调试、语法高亮,拥有强大丰富的插件系统
收藏 0 赞 0 分享
查看更多