跳转到主要内容

一个用于生成Github风格徽章的库和命令行工具

项目描述

CircleCI pypi versions

pybadges

pybadges是一个Python库和命令行工具,允许您创建Github风格的徽章作为SVG图像。例如

pip installation pip installation pip installation

生成的徽章的美观与本文档中找到的视觉设计相匹配。规范

库的实现受到了Shields.io和JavaScript徽章制作器库的强烈影响。

入门指南

安装

可以使用pip安装pybadges

pip install pybadges

要测试安装是否成功,请尝试

python -m pybadges --left-text=build --right-text=failure --right-color='#c00' --browser

您将在浏览器中看到这样的徽章

pip installation

用法

pybadges可以从命令行和Python库中使用。

命令行界面是实验API并在编写Python代码之前的好方法。

您还可以查看示例服务器

命令行使用

使用--help标志可以找到pybadges命令参数的完整文档

python -m pybadges --help

但以下用法演示了每个有趣选项

python -m pybadges \
    --left-text=complete \
    --right-text=example \
    --left-color=green \
    --right-color='#fb3' \
    --left-link=http://www.complete.com/ \
    --right-link=http://www.example.com \
    --logo='data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAIAAAACCAIAAAD91JpzAAAAD0lEQVQI12P4zwAD/xkYAA/+Af8iHnLUAAAAAElFTkSuQmCC' \
    --embed-logo \
    --whole-title="Badge Title" \
    --left-title="Left Title" \
    --right-title="Right Title" \
    --browser

pip installation

关于--logo--embed-logo的说明

请注意,--logo选项可以包含常规URL

python -m pybadges \
    --left-text="python" \
    --right-text="3.2, 3.3, 3.4, 3.5, 3.6" \
    --whole-link="https://pythonlang.cn/" \
    --browser \
    --logo='https://dev.w3.org/SVG/tools/svgweb/samples/svg-files/python.svg'

pip installation

如果设置了--logo选项,则还可以设置--embed-logo选项。该--embed-logo选项会将--logo中提供的URL内容嵌入到徽章中,而不是通过链接进行引用。

使用此选项的优势是渲染徽章时不需要额外的HTTP请求,并且某些浏览器根本不会加载图像引用。

您可以在浏览器中看到差异

--embed-logo=yes --embed-logo=no

关于--(whole|left|right)-title的说明

通常,浏览器将title元素显示为弹出窗口,但目前被Github过滤

库使用

pybadges主要用作Python库。

from pybadges import badge
s = badge(left_text='coverage', right_text='23%', right_color='red')
# s is a string that contains the badge data as an svg image.
print(s[:40]) # => <svg height="20" width="191.0" xmlns="ht

badge()的关键字参数与上面描述的命令标志名称相同,但使用关键字参数而不是短横线(例如,--left-text => left_text=)。

服务器使用

pybadges可以用于在网络上提供徽章图像。

服务器示例包含从Flask服务器提供徽章图像的示例。

注意事项

  • pybadges使用预先计算的文本宽度和间距表(针对西文字符)来确定徽章的大小。因此,东欧语言可能不如西欧语言渲染得好

    pip installation

    并且不在Deja Vu Sans(默认字体)中出现的符号可能渲染得非常糟糕

    pip installation

  • pybadges没有明确支持从右到左书写的语言(例如阿拉伯语、希伯来语),并且显示的文本方向可能不正确

    pip installation

开发

git clone https://github.com/google/pybadges.git
cd pybadges
python -m virtualenv venv
source venv/bin/activate
# Installs in edit mode and with development dependencies.
pip install -e .[dev]
nox

如果您想将更改贡献回pybadges,请阅读贡献指南

版本控制

我们使用SemVer进行版本控制。

许可证

本项目采用Apache许可证 - 请参阅LICENSE文件以获取详细信息

这不是Google官方支持的产品。

项目详情


下载文件

下载您平台对应的文件。如果您不确定该选择哪一个,请了解有关安装包的更多信息。

源代码分发

pybadges-3.0.1.tar.gz (58.6 kB 查看哈希值)

上传时间 源代码

构建分发

pybadges-3.0.1-py3-none-any.whl (57.3 kB 查看哈希值)

上传时间 Python 3

由以下支持

AWS AWS 云计算和安全赞助商 Datadog Datadog 监控 Fastly Fastly CDN Google Google 下载分析 Microsoft Microsoft PSF赞助商 Pingdom Pingdom 监控 Sentry Sentry 错误记录 StatusPage StatusPage 状态页面