thcolor -- the touhey color management module

This module is a color management module made by Thomas Touhey (th is for touhey) for the textoutpc project, a BBCode to HTML translation module. It provides the following features:

  • color management and conversions between formats (RGB, HSL, HWB, NCol, …).
  • text-to-color using close-to-CSS format.

For more information, consult the official website.


Converting an RGB color to HSL:

from thcolor import Color

color = Color(Color.Type.RGB, 55, 23, 224)

Converting a HSL color to RGB with an alpha value:

from thcolor import Color, Angle

alpha = 0.75
color = Color(Color.Type.HSL, Angle(Angle.Type.DEG, 180), 0.5, 1.0, alpha)

Converting a textual representation to the RGBA color components:

from thcolor import Color

color = Color.from_text("darker(10%,  hsl(0, 1, 50.0%))")

Getting the CSS color representations (with compatibility for earlier CSS versions) from a textual representation:

from thcolor import Color

color = Color.from_text("gray(red( #123456 )/0.2/)")
for repres in color.css():
        print(f"color: {repres}")