Skip to main content

tp24

Build Status Documentation Status PyPI Version Github Version Python Versions License

GitHub code size in bytes GitHub repo size GitHub last commit GitHub Release Date Lines of code codecov CodeFactor

Python colour library, made by 7d

  • supports RGB, CMY, CMYK, HSV, HSL models & transparency
  • add & subtract colours to lighten & darken
  • find gradient of line with proportions
  • find similarity of colours
  • colour schemes: analogous, complementary, compound, triadic, tetradic
    • you can define more schemes too, given degree around wheel and number of colours
  • get hex of colour
  • get colour from hex or web name

Current version: v1.0

Documentation: https://tp24.readthedocs.io/en/latest/

Why 'tp24'?

tp24 stands for two power 24, or 2^24 which equals to 16777216, the number of colours that the RGB model can show.

Examples

Create a colour:

>>> col = tp24.rgb(255, 0, 0)
>>> col
rgb(255, 0, 0)

Convert colour from one model to another

>>> col = tp24.rgb(255, 0, 0)
>>> col.hsv()
hsv(0, 100, 100)
>>> col.cmyk()
cmyk(0, 100, 100, 0)

Get individual channels of colour

>>> col.r
255
>>> col.g
0
>>> col.b
0

Get hex value of colours

>>> col.hexv()
'#ff0000'
>>> col.hexv(compress=True)
'#f00'

Load colour from hex or web name

>>> tp24.rgb.from_hex("#987654")
rgb(152, 118, 84)
>>> tp24.hsv.from_web("orange")
hsv(39, 100, 100)

Lighten and darken colours by addition & subtraction

>>> col1 = tp24.rgb(255, 0, 0)
>>> col2 = tp24.hsl(270, 100, 50)
>>> col + col2
rgb(255, 0, 255)
>>> col - col2
rgb(127, 0, 0)

Mix colours

>>> col1*col2
rgb(192, 0, 128)
>>> tp24.tools.gradient(col1, col2)
rgb(192, 0, 128)
>>> tp24.tools.gradient(col1, col2, ap=0.25, bp=0.75)
rgb(160, 0, 191)

Find similarity of colours

>>> # works best in hsl/hsv
>>> col1 = tp24.hsl.from_web("red")
>>> col2 = tp24.hsl.from_web("orange")
>>> tp24.tools.similarity(col1, col2)
0.7388888888888889
>>> col2 = tp24.hsl.from_web("green")
>>> tp24.tools.similarity(col1, col2)
0.8055555555555557

Colour schemes

>>> col = tp24.rgb(255, 0, 0)
>>> col.analogous()
(rgb(255, 0, 128), rgb(255, 128, 0))
>>> col.compound()
(rgb(0, 255, 128), rgb(0, 128, 255))
>>> col.complementary()
rgb(0, 255, 255)
>>> col.triadic()
(rgb(0, 0, 255), rgb(0, 255, 0))
>>> col.tetradic()
(rgb(128, 0, 255), rgb(128, 255, 0), rgb(0, 255, 255))
>>> col.wheel(5, 72)
(rgb(204, 0, 255), rgb(204, 255, 0), rgb(0, 102, 255), rgb(0, 255, 102), rgb(0, 255, 102))

Invert values

>>> col.inverted()
rgb(0, 255, 255)

Support for transparency

>>> col
rgb(255, 0, 0
>>> col = col.add_alpha(50)
>>> col
rgba(255, 0, 0, 50)
>>> col = col.remove_alpha()
>>> col
rgb(255, 0, 0)

Release files for tp24 1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for tp24 1.0
File Size Uploaded
tp24-1.0.tar.gz 11.1 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for tp24 1.0
File Interpreter ABI Platform
tp24-1.0-py3-none-any.whl Python 3 none any Details

Total release size: 35.3 kB

Release files / tp24-1.0.tar.gz

Download URL tp24-1.0.tar.gz
Size 11.1 kB
Tags Source
SHA-256 checksum
How to use checksums
a155fa1ed07023a49ed09714a58add8fb04d113793f7c3cdfebaea2c1e7f2329
BLAKE2b-256 checksum
How to use checksums
bbf266a8fd268f1d2cb85ff3cb8158e60fe42edc6b8baa88f08feae299dd40d9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.4.1 importlib_metadata/3.10.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.8.0 tqdm/4.60.0 CPython/3.8.9

Release files / tp24-1.0-py3-none-any.whl

Download URL tp24-1.0-py3-none-any.whl
Size 24.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
a7843b467643cd857d45e64bf132f77aa9f61f8337022be7894c822e1fee3b23
BLAKE2b-256 checksum
How to use checksums
212b59c6bde7eca4659cd53779ff20553fb6d998498215d375ccef983ef08c64
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.4.1 importlib_metadata/3.10.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.8.0 tqdm/4.60.0 CPython/3.8.9

Release history Release notifications | RSS feed

This release

1.0 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page