生成hexo底部自定义小徽章

生成hexo底部自定义小徽章

1.什么是徽章

徽章是一种小巧精美的小图标,一般配有相关文字进行辅助说明,富有表现力,本质是一种 svg格式的矢量图标

2.如何生成自定义徽章

标题/内容/颜色/链接

shields.io提供了添加自定义徽标的功能,通过修改如下URL即可获取自定义徽标图片:

1
https://img.shields.io/badge/{徽标标题}-{徽标内容}-{徽标颜色}.svg
  • {徽标标题}:徽标左半部分的文本(短线:—,下划线:_,空格: 或);

  • {徽标内容}:徽标右半部分的文本,同上;

  • {徽标颜色}:徽标右半部分背景颜色,可以是 red、green、blue 等颜色英文单词,也可以直接写十六进制的颜色值,如 ff69b4

将其中的 {徽标标题}、{徽标内容}、{徽标颜色} 分别替换为需要的内容即可:

1
![](https://img.shields.io/badge/blog-@Aurora-green)

做出如下代码和效果如下

附加参数

可以在徽标图片 URL 后面带上一些参数来控制徽标的样式,这一部分是可选的,不想折腾的话默认的样式就挺好了,可以不看这里的。

使用方法就是在徽标图片 URL 后面跟上 ?{参数名}={参数值}

多个参数联用的话就是 ?{参数名1}={参数值1}&{参数名2}={参数值2}...

style

style 控制徽标的主体样式,有四种,不设置的话默认是 flat 的,示例代码和效果如下:

plastic

塑料?大概是指立体效果

1
![](https://img.shields.io/cocoapods/v/Alamofire.svg?style=plastic)

flat

正常的样子,扁平化

1
![](https://img.shields.io/cocoapods/v/Alamofire.svg?style=flat)

flat-square

扁平化 + 去除圆角

1
![](https://img.shields.io/cocoapods/v/Alamofire.svg?style=flat-square)

social

扁平化 + 去除圆角

1
![](https://img.shields.io/cocoapods/v/Alamofire.svg?style=social)

  • label

该参数可以用来强制覆盖原有的徽标标题文字,效果如下,原有的 pod 字样已经被覆盖了:

1
![](https://img.shields.io/cocoapods/v/Alamofire.svg?label=healthinesses)

该参数可以用来为徽标添加 logo,logo 图片会出现在左半部分的徽标标题左边,logo 图片高度必须 ≥ 14px,logo 图片需要先转为 base64 编码然后直接插入到 URL 中(可以用 b64.io将图片转为 base64 编码的字符串),格式如下。

1
?logo={base64 编码后的图片数据}

示例代码和效果如下:

1
2
![](https://img.shields.io/badge/%E4%BA%ACICP%E5%A4%87-2021021028%E5%8F%B7-red?logo=data%3Aimage%2Fpng%3Bbase64%2CiVBORw0KGgoAAAANSUhEUgAAAB4AAAAdCAYAAAC9pNwMAAABS2lUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4KPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS42LWMxNDIgNzkuMTYwOTI0LCAyMDE3LzA3LzEzLTAxOjA2OjM5ICAgICAgICAiPgogPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4KICA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIi8%2BCiA8L3JkZjpSREY%2BCjwveDp4bXBtZXRhPgo8P3hwYWNrZXQgZW5kPSJyIj8%2Bnhxg7wAACNlJREFUSInF1mmMVeUdx%2FHv2e%2B5%2B519mJWBYQZkGxZZxLKJqBXGoLS1iXWrmihotFXaJiTWWlsbl6q1aetWd5u0VkKjNG4YEJSlOCibDLMwM8x679z9nnPP1jcVJUxf%2B7z6J8%2BLT37%2FZ4VvaQhfFS8%2BsBXbctCDGrVTKlBUH4mxAbI9Hfj0IJLsp6paJ5%2Ftmn20N%2FD0wKDRMq9F%2Fc3M2U1%2FV0vDfWMFh%2Btv%2FIg1zYPMabDImPJ52OaXO87W580KggCiiOsJOJ6I3wcNFaaeNKxrt72f2fLGu4FpJ%2FsDQABRzD22fH7%2FYze069vGc6mrDLNIJCDik10sxz2by3VdPM87xzkP9jwPTZFRVI1YUJKH%2Boy7n3tbvv%2FP2wW%2FUQxRWe6w4ZJRptYLHDoCuz8v5cP92XbI762O%2Bh6UVWHnUFbPpU0fEb2A60mMJ7MUi9b%2Fb7UgKhiZMaIxm8YLplLMDPz8hl%2FEH%2Brs8TNlUpFf32uyZJGLPDwCiTGUyTWodTN49eUCdz2YwXb9NNcObp1X98WDoufynzMVCEKGn27ayPTWBi5ad8P5iQUkJEnFLjqM9Z%2BhrVX0vfDe6K2dPRWsW2bwyp9EUifSJB84gdxrkR0eRgv1o%2F3I4fbbprJ6scqamzVO9pffec1S5ZWY2Nfz5qEy%2FFqOC2Y3s3j53HMSi18VRjFPwSwg%2B1RfVbl115vvJrsfej7UGIsYPPGgQ7JXoO%2BXx5B3dHEomyJ9x1qiQozkr95h5937aFnVyouPlgJK%2BSs7Fxz64OTSxSX%2BLHYxT2IsRW5kbGI4oHcR0jqoqTjV9se3I7%2Ff8rS%2FClS23GxSXhph6L5d9Akm7qqZhHWBQGUJ%2BCWGFzcg7e7m6D3%2FZuW1Ea5YKdA3EojuONi813TqNi%2BYPYOKUhXDtCeGL26%2FhakLLiEcdsaHRkRAoLRc4fJrmhnekyF0apgZowWSwwkaa%2Brw3f8WA1GZZsPP5JEChX8dhZTN6iU6kAcs5s%2BdHd183SJ0VVKL57pfw6YdRQw23aeWTns47DPTALWlRTR7kMLew6hGgYqUhWXYFFUdPZ6lUBahLA8hVcOftckfi7No7VRAAQqsX1dybfvG1qwriM9mM5mJ4e4jO5Cc01dPqixbr8tWGBQUL4vjGigEEShi%2BxUmZ2RiR%2FsJ1pbS8NkgZrKAGw0TsgQsQyFaF%2FnfYTGprAlMFysbA1pI3mhkR6snhGsaymYGvPyFEb9IdbUE2AzFFTwpRqCtBY0wmdER%2BhZW4j63gcJj38V%2B%2FErSUZXsYBfjIZHIRW0c2Z8BskCAqN%2BCbBJBFnyyKjR%2BEz57nBxLqpfMUeSISElMBFz6x2Q6OxzWrYjyxWVzEewioU3LCS5vQY6nMUrLwNaxXvoQ59IloFSx54PPAZtQLExVZZDxsVE8J4dn6v4JYatgbSjk0owPw7RGH2ADMo88Z7L20ip8f7gC7fAo0q4%2B0rt7kEQDvaghVZbiPHUHcyeXcfLjT3jmpR7AYsnSScya3UR8bARVMck7Y%2FcB75%2FX6rDf3Fg2dw2jKZm5dXGm1LuAzO5DCo9v6aT0ibco5kzOvLOP%2BNGTFJtDpPYeZKijk%2FRn3QxsfZV7txwhX7ABiZUXBsGvIvguQApNQQva9RMmTvZ2dpVUls%2BtX%2FUD7GN%2FY8Ws05w6rQF%2B9vyzg1vZjbvMRJhXiRSU8DpTFFe0QE8S6SfPkOkZoktrB2oAhZWrwljxOPmchiSMYOWNoxNuruFU5vWeXdsojiUon345113dBBQBmTYlTimgdB8nfPo4WjaNFgN9OMEkJ02dnadVt5ki54Esqy%2BbzKJltVhSPbI3iN2zCyMTeXNCuG7Omm2Zok7PR2%2BR7jvD8ouruHhmCrB5jVZeYxLdrTP4sr4Vtd9g4MA4qc4c%2B6cu5NPamfw4P59t2WrA4YdXKkASf7SFivo6PDdEPmf1fRM%2B%2Bzp1bH%2F0r4I1dD1ODtOWaW4IsvPjL7nqXhloQiSPwjjgMYkMASyGEBkjhISCQwkwzve%2F18AbT%2Bpk8pVY4UacQi9y%2BgyZ0eRAw4qHa89LXEx1LXMSPfhDJYRb59BtlLKg2WPT2l6qYl1svtGkrLYckyA1S%2Bt5%2B2ATm37WCui0LSynsckDNH5zTxAchbQtkx08hDHYiW6NgC0enHBzEZ102UDH8QORdEckjEzZrNWkRydzyx17uGnDXqbUnGZ6dRPjSY91q2TqwjFuvTxLo5Zn5Qo%2FpumRSFcTLQtybEhGE0fQrDhhJ0VvH2lTnnHPhGtsmWan469apERjI2MH3qN7%2B7MEfH6ql29CbV7PvsMG32k6yU2XDhEKyZw66eJaRdrXR7CzCcqUNC3zwgymPJRCH4KRRLINimpL14A5Y4GDeOqbsPRVcfuN7Xj44pav%2FhFfrNT2kr2rsqf2Ibp5pEA14ZIImUyW3t5REkkTXRGQ%2FDGGhtLginhqCWknQDE5hKf5UFSF9Lj020Q2ul5V1AR2hr%2B8vuP8Vlc2zMPRxoSjnx7XBC14sDoydahSGq7KdO%2FHFyrBchxCVfX4fDKp4T7SCQejYODZLrYgIqgKFsNIgQqEYob8mW6yiUyb7Z64LVK%2F%2BB85xznnJ3AWzqTzuIX46mr5wLs%2BUUTyIriBCjRNxguHMJIFDLEEvXEOVRWnSJ0%2BjCd4CJoGjoedM1CLcXQziW3nMV2TSMBeOx7vWZvPt1r%2BcMPzE8KunaUkFn0vNrvtqXj34c1W6gzxlEQ6naIoBahtnkMwoFMwIVzSRNguMt53Aj2s4nkSlgPoGqLkICsRNF0gl8rYWuP8%2B11%2Fw%2FOOJDEhHPKLCIpOXmi%2BM9AgP%2BmaiesLifF2T1Rn5ZNj5Lo%2FQc%2FGcPMmhdoqlEgIGzCK4PiCmJKK68p4KfF3qYGuF0qCRUkJTzleUbvQyWRTuE5xYthxQbBs7EISAbkzUFG3VfXXbK2YFi3X%2FeryfKKnqVBItNjJxDzH8erddC4SqWwcN5WyTtlyO1RP%2FLh3eHD76MB40swmiDVJyDLYRhpc5%2Bub6tse%2FwWKbvSQEAw1awAAAABJRU5ErkJggg%3D%3D
)

logoWidth

该参数可以设置在上一个参数 logo 中添加的图标的宽度,设为 0 的话即为忽略该参数,示例代码和效果如下:

1
2
![](https://img.shields.io/badge/gadget-Raspberry%20Pi-pink.svg?logoWidth=100&logo=data%3Aimage%2Fpng%3Bbase64%2CiVBORw0KGgoAAAANSUhEUgAAAAsAAAAOCAYAAAD5YeaVAAACJ0lEQVR4AW2Qy0tUfxjGv3Pm3O%2BXGec3jnMZZ9Rxxp%2BWkYpJ2QkVIzDpkkoGBSOpBZmWgRIkWSs30SJchC26B9aijKLaFET9Be1q46ayRVDU5uk9Q8seeOG8X573eT%2FnZbwQqo5l5Rube52PQdH3BcaY4SbEiy2%2B%2FWFLv7ueblJv0luJmRHBHzqfwuyDRkzfKqB8pRZeQnwzuZynvgHTtwsYvZRBs2%2BVGSU5nfsjX2bocexqDsMLKXgZCQfmkzi6lK0EDJxOfNJdoYORQl5O3OeXY5%2BH59PI5XXUMh3RuIQR6v2J2Ld8h3488FXMBWb2TJkNPw9GUzirF3HX2oZFrQUD0Rqc84rfVcaPs0D%2FcTK%2FQ6y6N6eVsJX3MCglcUzJYVytw6CYxKRSj1Elu0bWCBNCXCnPGz96pTieOTvxyN6OIm%2Fhid2Nx1SzWhGxsLwR4aQ9rFOMPl8lwwQlvXZ78NLZhRbBwZrTjReOjzuENKc1YUTOrLJ%2BKf7%2BsrEJhIL7dhfOaI34n7cxpRWwYnbghFqPMmENyelXzOLE0d1SNbrFGOKcgmDwnduH61Y7zJCAvVINDisZJMPqNEuHVeOQnPr11u3FESWLa2ZbBecp8VNaZXBBb15njHUxmxPC7YK3uGS0YkzNo1VwcZJWtwkeThHKMg33SfEVMqsskBeSjLqwMZYKa18ppXKRwESIv0u8NVPFyRb7hxK0ZYX%2BfIPO95D6KBXH%2FuoPnu%2FBfZ7Zxb0AAAAASUVORK5CYII)

据说该参数是用来设置点击后跳转的 URL 的(嗯,俗称超链接),官方描述如下:

Specify what clicking on the left/right of a badge should do (esp. for social badge style)

不过试了一下好像没啥效果(并且实在是没想明白怎么通过返回的图片控制不同点击区域的跳转),如果有大佬知道的求指点,感谢!

colorA

该参数用来控制徽标左半部分的背景色,只能用十六进制的颜色作为参数哦,不能直接写 red、green、blue 之类的,这里将左半部分的背景色改为 0xabcdef,代码和效果如下:

1
![](https://img.shields.io/badge/twitter-@EyreFree777-blue.svg?colorA=abcdef)

colorB

该参数用来控制徽标右半部分的背景色,同上,只能用十六进制的颜色作为参数哦,不能直接写 red、green、blue 之类的,这里将右半部分的背景色改为 0xabcdef,代码和效果如下:

1
![](https://img.shields.io/badge/twitter-@EyreFree777-blue.svg?colorB=abcdef)

maxAge

该参数用来设置 HTTP 缓存时间,以秒为单位,直接在 svg 地址后跟 ?maxAge={缓存秒数} 即可,好像没啥好预览的,不放效果图了。

备注

这里需要注意的是,如果你是引用的第三方 svg 然后添加自己的样式,如果该样式之前已经被第三方添加过,是不一定会覆盖第三方的设置的,也就是说自己设置的属性不一定会生效…例如下面的代码设置 colorB 就没生效:

1
2
![](https://img.shields.io/cocoapods/v/Alamofire.svg?colorB=000000)

右半部分应该变成黑色,但是毫无效果的说:

3.如何使用徽章

大多数徽章都是 svg 格式,当然也不排除默写徽章是 png 格式,不论怎么说,一律当成图标使用就可以了,如果你和我一样,希望在 markdown 文件中使用徽章,那么建议使用在线链接,或者引入本地 svg 相关文件.

  • 在markdown中直接使用
1
![](https://cdn.guozy.online/config/%E5%A4%87%E6%A1%88%E5%8F%B7.svg)
  • 想在点击图片后跳转到某个页面,可以这样写
1
[![](https://cdn.guozy.online/config/%E5%A4%87%E6%A1%88%E5%8F%B7.svg)](https://beian.miit.gov.cn/)
  • 如果你是在 html 文件使用徽章,同样先取得在线徽章地址,然后按照 html 语法插入图片即可.
1
2
3
4
<a href="https://beian.miit.gov.cn/">
<img src="https://cdn.guozy.online/config/%E5%A4%87%E6%A1%88%E5%8F%B7.svg" alt="备案号">
</a>

不论是什么语法,最核心最根本的获得到徽章链接,至于不同语言有着各自的语法,按照语言规则手动拼接就好.

工具网站

生成图标Shields.io
图片转base64b64.io

参考文档

工具资源系列之 github 上各式各样的小徽章从何而来?
GitHub 项目徽章的添加和设置