X-Git-Url: https://git.josue.xyz/?a=blobdiff_plain;ds=sidebyside;f=.local%2Flib%2Fpython3.9%2Fsite-packages%2Fpywal%2Fbackends%2Fcolorz.py;fp=.local%2Flib%2Fpython3.9%2Fsite-packages%2Fpywal%2Fbackends%2Fcolorz.py;h=b789a3af14f58eae8d24dde403197ec8c83bdce3;hb=be62f45026507330c54b0d3ace90aceb312e1841;hp=0000000000000000000000000000000000000000;hpb=812379a745a7f23788c538f26d71c84232bf09cc;p=dotfiles%2F.git diff --git a/.local/lib/python3.9/site-packages/pywal/backends/colorz.py b/.local/lib/python3.9/site-packages/pywal/backends/colorz.py new file mode 100644 index 00000000..b789a3af --- /dev/null +++ b/.local/lib/python3.9/site-packages/pywal/backends/colorz.py @@ -0,0 +1,43 @@ +""" +Generate a colorscheme using Colorz. +""" +import logging +import sys + +try: + import colorz + +except ImportError: + logging.error("colorz wasn't found on your system.") + logging.error("Try another backend. (wal --backend)") + sys.exit(1) + +from .. import colors +from .. import util + + +def gen_colors(img): + """Generate a colorscheme using Colorz.""" + # pylint: disable=not-callable + raw_colors = colorz.colorz(img, n=6, bold_add=0) + return [util.rgb_to_hex([*color[0]]) for color in raw_colors] + + +def adjust(cols, light): + """Create palette.""" + raw_colors = [cols[0], *cols, "#FFFFFF", + "#000000", *cols, "#FFFFFF"] + + return colors.generic_adjust(raw_colors, light) + + +def get(img, light=False): + """Get colorscheme.""" + cols = gen_colors(img) + + if len(cols) < 6: + logging.error("colorz failed to generate enough colors.") + logging.error("Try another backend or another image. (wal --backend)") + sys.exit(1) + + return adjust(cols, light)