平时你们在在逛 github
时或多或少都看到过项目首页各式各样的小徽章,不知道你是否和我同样好奇这些小徽章都是哪来的呢?html
首先咱们先来一睹为快目前前端开发的三大主流框架: var
,看一看他们的 github
项目首页有哪些小徽章吧!前端
Angular
: https://github.com/angular/angular小结:vue
前端三大框架的徽章均不相同,因而可知,这应该不是 github
统一分发而是自定义行为!python
虽然不是统一分配的,但也不是毫无规律可寻,想要制做专属的小徽章,其实真的很简单!react
徽章是一种小巧精美的小图标,通常配有相关文字进行辅助说明,富有表现力.git
不只出现于 github
项目主页,凡是可以表现图片的地方均可以出现徽章,本质上是一种 svg
格式的矢量图标.github
下面以自定义 github-snowdreams1006-brightgreen.svg
徽章为例,简单认识一下徽章.docker
https://img.shields.io/badge/github-snowdreams1006-brightgreen.svg
打开在线连接,并检查当前网页,豁然开朗,徽章是一种
svg
实现的矢量图标.
c#
svg
VS png
若是说
svg
是矢量图形而png
却不是,因此不妨将png
姑且称之为标量图形.
svg
是矢量图形,png
是标量图形,二者均能实现相似效果,只不过矢量图形不论怎么方法都能保持原样,并不会像 png
那样会失真而已.
既然两种均能表现相同的效果,如今咱们就来演示一下 png
的实现效果.
svg
转png
在线网站: https://cloudconvert.com/svg-to-svg
左侧的
svg
不管放大多少倍,依然保持原样,清晰度保持不变.右侧的png
一旦放大,立马变得模糊不清.
大多数徽章都是 svg
格式,固然也不排除某些徽章是 png
格式,不论怎么说,一概当成图标使用就能够了.
若是你和我同样,但愿在 markdown
文件中使用徽章,那么建议使用在线连接,或者引入本地 svg
相关文件.
徽章格式 :
[](超连接地址)
即超连接内部嵌套图片
[](https://github.com/snowdreams1006)
若是你是在 html
文件使用徽章,一样先取得在线徽章地址,而后按照 html
语法插入图片便可.
徽章格式 :
<a href="超连接地址"><img src="图片源地址" alt="图片文字说明"></a>
即超连接内部嵌套图片
<a href="https://github.com/snowdreams1006"> <img src="https://img.shields.io/badge/github-snowdreams1006-brightgreen.svg" alt="github"> </a>
不管是什么语法,最核心最根本的得到到徽章连接,至于不一样语言有着各自的语法,按照语言规则手动拼接就好.
Badge URL
https://img.shields.io/badge/github-snowdreams1006-brightgreen.svg
Markdown
[](https://github.com/snowdreams1006)
HTML
<a href="https://github.com/snowdreams1006"><img src="https://img.shields.io/badge/github-snowdreams1006-brightgreen.svg" alt="github"></a>
Textile
!https://img.shields.io/badge/github-snowdreams1006-brightgreen.svg!:https://github.com/snowdreams1006
RDOC
{<img src="https://img.shields.io/badge/github-snowdreams1006-brightgreen.svg" alt="github" />}[https://github.com/snowdreams1006]
AsciiDoc
image:https://img.shields.io/badge/github-snowdreams1006-brightgreen.svg["github", link="https://github.com/snowdreams1006"]
RST
.. image:: https://img.shields.io/badge/github-snowdreams1006-brightgreen.svg :target: https://github.com/snowdreams1006
若是以徽章的格式为标准,那么能够分为svg
和 png
两类.
svg
https://badge.fury.io/js/gitbook-plugin-mygitalk.svg
png
https://badge.fury.io/js/gitbook-plugin-mygitalk.png
若是以徽章的样式为标准,那么能够分为默认样式和自定义样式两类.
https://img.shields.io/github/stars/snowdreams1006/snowdreams1006.github.io.svg?style=social
https://img.shields.io/badge/%E5%BE%AE%E4%BF%A1%E5%85%AC%E4%BC%97%E5%8F%B7-%E9%9B%AA%E4%B9%8B%E6%A2%A6%E6%8A%80%E6%9C%AF%E9%A9%BF%E7%AB%99-brightgreen.svg
若是以徽章的内容数据是否动态为标准,那么能够分为静态数据和动态数据两类.
静态数据意味着数据自己是不变的,只要在线连接不变,那么生成的徽章永远不会改变,而动态数据意味着生成徽章的数据是动态变化的,即便在线连接不变,当数据自己发现变化时,徽章天然随之更新.
https://img.shields.io/badge/github-snowdreams1006-brightgreen.svg
https://badge.fury.io/js/gitbook-plugin-mygitalk.svg
静态数据示例中
github-snowdreams1006-brightgreen.svg
数据不会更改,天然生成的徽章也不会变.动态数据示例中gitbook-plugin-mygitalk.svg
是npm
的版本号,当项目升级后,版本号会发生更改,那么生成的徽章也会随之更新.
若是以徽章的内容数据来源为标准,那么能够有无数多的分类.
GitHub
https://badgen.net/github/stars/snowdreams1006/gitbook-plugin-mygitalk
Npm
https://badgen.net/npm/dt/gitbook-plugin-mygitalk
Docker
https://badgen.net/docker/stars/library/centos
若是以徽章的内容数据用途为标准,那么也能够有无数多的分类.
https://img.shields.io/travis/GitbookIO/gitbook.svg
https://img.shields.io/codecov/c/github/vuejs/vue.svg
https://img.shields.io/github/languages/top/snowdreams1006/snowdreams1006.github.io.svg
徽章有不一样的分类,不论是哪一种分类,在线徽章最为简单便捷,下面就简单介绍下提供在线生成徽章的网站.
适用于绝大多数状况,默认按照徽章内容分类,
Build
,Code Coverage
,Analysis
等多主题,同时支持自定义徽章和动态徽章.
若是徽章的主题明确,那么根据网站提供的主题对号入座便可在线生成徽章,下面以 gitbook-plugin-mygitalk
为例,简要说明如何得到相应徽章连接.
gitbook-plugin-mygitalk 是
gitbook
的一款评论插件.
打开网站后按照分类,选择其中一个主题,点击进去后填写目标信息,便可在线生成徽章.
License
许可证主题.License
许可证列表,选择 NPM
许可证.npm
包信息并实时预览,而后点击按钮复制徽章连接或者或者特定格式的徽章.
按照主题生成徽章真的很简单,首先对号入座,而后按需生成相应徽章便可,惟一的要求就是对号入座!
若是默认提供的徽章主题没有适合本身的徽章,或者想要自定义徽章效果,那么也能够在线制做私人订制徽章.
Your Badge
区域,准备制做专属徽章.Label
)标签-(Message
)信息-(Color
)颜色等信息后,点击(Make Badge
)生成徽章.
徽章内容来源种类较多,默认按照平台分类,按照特定规则生成徽章,须要手动拼接在线连接,略显繁琐.
https://badgen.net/badge/:subject/:status/:color?icon=github ──┬── ───┬─── ──┬─── ──┬── ────┬────── │ │ │ │ └─ Extra Options (label, list, icon, color) │ │ │ │ │ TEXT TEXT RGB / COLOR_NAME ( optional ) │ "badge" - default (static) badge generator
虽然支持颜色,图标以及查询参数等高级用法,可是仍是习惯性采用默认设置,下面动手开始制做徽章吧!
GitHUb
徽章.stars
徽章,将 micromatch
替换成目标信息./github/stars/micromatch/micromatch
替换成 /stars/snowdreams1006/snowdreams1006.github.io

除了支持动态徽章,一样也支持静态徽章,切换到 STATIC BADGES
选项卡,一块儿来生成静态徽章吧!

按照徽章的在线连接规则,应该也支持自定义徽章,再次回顾一下连接规则:
规则 :
https://badgen.net/badge/:subject/:status/:color
,若是是自定义动态连接,估计不支持吧!

扁平化的徽章,支持的徽章数量有限,不支持自定义徽章.
网站首页默认提供了一些预览徽章,左侧是复制 image
连接,右侧是复制 markdown
连接.
[](https://forthebadge.com)
网站首页默认展现的徽章毕竟有限,若是找不到理想徽章,岂不是白介绍了这个网站,固然不可以!
VIEW ALL
查看目前支持的所有徽章,若是仍是找不到徽章,那就真的没有.
版本徽章,支持各种平台版本,包括
npm
,Ruby
,Python
,Go
等平台.
选择目标平台并输入包管理信息,便可在线生成各个类型的徽章版本.
[](https://badge.fury.io/js/gitbook-plugin-mygitalk)
默认 markdown
实现的图片是依次排开的,没法自定义样式,而 markdown
语法同时也兼容 html
语法,所以咱们能够用 html
语法实现居中对齐.
<p align="center"> <a href="https://circleci.com/gh/vuejs/vue/tree/dev"> <img src="https://img.shields.io/circleci/project/github/vuejs/vue/dev.svg" alt="Build Status"> </a> <a href="https://codecov.io/github/vuejs/vue?branch=dev"> <img src="https://img.shields.io/codecov/c/github/vuejs/vue/dev.svg" alt="Coverage Status"> </a> <a href="https://www.npmjs.com/package/vue"> <img src="https://img.shields.io/npm/dm/vue.svg" alt="Downloads"> </a> <a href="https://www.npmjs.com/package/vue"> <img src="https://img.shields.io/npm/l/vue.svg" alt="License"> </a> <a href="https://chat.vuejs.org/"> <img src="https://img.shields.io/badge/chat-on%20discord-7289da.svg" alt="License"> </a> </p>
   
[](https://github.com/snowdreams1006) [](http://weixin.qq.com/r/cy5CWvvE5Kabrb8593th) [](https://www.imooc.com/u/5224488/articles) [](https://www.jianshu.com/u/577b0d76ab87) [](https://blog.csdn.net/weixin_38171180) [](https://www.cnblogs.com/snowdreams1006/) [](https://juejin.im/user/582d5cb667f356006331e586) [](https://segmentfault.com/u/snowdreams1006) [](https://my.oschina.net/snowdreams1006) [](https://cloud.tencent.com/developer/user/2952369/activities)
[](https://github.com/fehmicansaglam/progressed.io) [](https://github.com/fehmicansaglam/progressed.io) [](https://github.com/fehmicansaglam/progressed.io) [](https://github.com/fehmicansaglam/progressed.io)