
Product
A New Overview in our Dashboard
We redesigned Socket's first logged-in page to display rich and insightful visualizations about your repositories protected against supply chain threats.
.. -- rst --
colorzero is a color manipulation library for Python (yes, another one) which aims to be reasonably simple to use and "pythonic" in nature.
It does not aim to be as comprehensive, powerful, or that matter as correct
as, say, colormath
. colorzero originally grew out of work on my picamera
project, hence it's intended to be sufficiently simple that school children can
use it without having to explain color spaces and illuminants. However, it does
aim to be useful to a wide range of skills, hence it does include basic
facilities for CIE Lab
_ representations, and Delta-E
_ calculations should
you need them.
The major difference between colorzero and other libraries (grapefruit
,
colormath
, etc.) is that its Color
class is a namedtuple
descendent.
This means it is immutable; you cannot directly change the attributes of a
Color
instance. The major advantage of this is that instances can be used
as keys in dictionaries (for simple LUTs
_), or placed in sets.
Manipulation of Color
instances is done by typical operations with other
classes the result of which is a new Color
instance. For example::
>>> Color('red') + Color('blue')
<Color html='#ff00ff' rgb=(1, 0, 1)>
>>> Color('magenta') - Color('red')
<Color html='#0000ff' rgb=(0, 0, 1)>
>>> Color('red') - Red(0.5)
<Color html='#800000' rgb=(0.5, 0, 0)>
>>> Color('green') + Color('grey').red
<Color html='#808000' rgb=(0.501961, 0.501961, 0)>
>>> Color.from_hls(0.5, 0.5, 1.0)
<Color html='#00ffff' rgb=(0, 1, 1)>
>>> Color.from_hls(0.5, 0.5, 1.0) * Lightness(0.8)
<Color html='#00cccc' rgb=(0, 0.8, 0.8)>
>>> (Color.from_hls(0.5, 0.5, 1.0) * Lightness(0.8)).hls
HLS(h=0.5, l=0.4, s=1.0)
BSD license
_source code
_ can be obtained from GitHub, which also hosts the bug tracker
_documentation
_ (which includes installation, quick-start examples, and
lots of code recipes) can be read on ReadTheDocsPyPI
_, but reading the installation
instructions is more likely to be useful.. _picamera: https://picamera.readthedocs.io/ .. _colormath: https://python-colormath.readthedocs.io/ .. _grapefruit: https://grapefruit.readthedocs.io/ .. _CIE Lab: https://en.wikipedia.org/wiki/Lab_color_space .. _Delta-E: https://en.wikipedia.org/wiki/Color_difference .. _PyPI: http://pypi.python.org/pypi/colorzero/ .. _documentation: http://colorzero.readthedocs.io/ .. _source code: https://github.com/waveform80/colorzero .. _bug tracker: https://github.com/waveform80/colorzero/issues .. _BSD license: http://opensource.org/licenses/BSD-3-Clause .. _LUTs: https://en.wikipedia.org/wiki/Lookup_table#Lookup_tables_in_image_processing
FAQs
Yet another Python color library
We found that colorzero demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 2 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Product
We redesigned Socket's first logged-in page to display rich and insightful visualizations about your repositories protected against supply chain threats.
Product
Automatically fix and test dependency updates with socket fix—a new CLI tool that turns CVE alerts into safe, automated upgrades.
Security News
CISA denies CVE funding issues amid backlash over a new CVE foundation formed by board members, raising concerns about transparency and program governance.