tinycolor.py
Python color tooling
tinycolor.py 是一个用于 Python 的颜色操作和转换的库。它支持多种形式的输入,同时提供颜色转换和一些其他的实用功能。
安装
通过 pip 安装(推荐)
$ pip3 install tinycolor.py
源码安装
$ [sudo] python3 setup.py install
使用
import
import tinycolor
print(tinycolor.is_valid('#FFFFFF'))
from ... import
from tinycolor import *
print(is_valid('#FFFFFF'))
支持的色值形式
Hex
#FFF
#FFFFFF
RGB
rgb(255, 255, 255)
方法
get_format
获取颜色的格式,如果获取不到格式,则抛出一个 RuntimeError
color = '#FFFFFF'
get_format(color) # 'Hex'
color = 'rgb(255, 255, 255)'
get_format(color) # 'RGB'
color = 'ABCDEF123'
get_format(color) # RuntimeError('Not a color!')
is_valid
判断颜色格式是否合法
color = '#FFFFFF'
is_valid(color) # True
color = 'rgb(255, 255, 255)'
is_valid(color) # True
color = 'ABCDEF123'
is_valid(color) # False
short_hex_to_long
将短十六进制色值(三位)转换为长十六进制色值(六位)
color = '#FFF'
short_hex_to_long(color) # '#FFFFFF'
color = '#FFFFFF'
short_hex_to_long(color) # '#FFFFFF'
color = 'rgb(255, 255, 255)'
short_hex_to_long(color) # RuntimeError('Not a hex color!')
to_r_g_b
分别获取颜色 R、G、B 三通道的十进制色值
color = '#FFFFFF'
to_r_g_b(color) # 255, 255, 255
color = 'rgb(255, 255, 255)'
to_r_g_b(color) # 255, 255, 255
to_hex
将颜色转换为十六进制色值
color = 'rgb(255, 255, 255)'
to_hex(color) # '#FFFFFF'
color = '#FFF'
to_hex(color) # '#FFFFFF'
to_rgb
将颜色转换为 RGB 格式色值
color = '#FFFFFF'
to_rgb(color) #'rgb(255, 255, 255)'
get_brightness
返回颜色的感知亮度,基于 Web Content Accessibility Guidelines (Version 1.0) 的定义
color = '#000000'
get_brightness(color) # 0
color = 'rgb(255, 255, 255)'
get_brightness(color) # 255
get_luminance
返回颜色的感知亮度,基于 Web Content Accessibility Guidelines (Version 2.0) 的定义
color = '#000000'
get_luminance(color) # 0
color = 'rgb(255, 255, 255)'
get_luminance(color) # 1
is_dark
返回颜色的感知亮度是否为暗
color = '#000000'
is_dark(color) # True
color = 'rgb(255, 255, 255)'
is_dark(color) # False
is_light
返回颜色的感知亮度是否为亮
color = '#000000'
is_light(color) # False
color = 'rgb(255, 255, 255)'
is_light(color) # True