diff options
| author | Kaalleen <36401965+kaalleen@users.noreply.github.com> | 2023-07-16 07:56:28 +0200 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2023-07-16 07:56:28 +0200 |
| commit | f5a68fb4a8690041700cf5a619065c56a5318900 (patch) | |
| tree | e84905e729b673b158d64b4ce7d4b7119ccfad78 /lib/threads/color.py | |
| parent | 81806a47ab8c31de6faf9391ac72f8c5fd51aba2 (diff) | |
remove tinycss2 (#2424)
Diffstat (limited to 'lib/threads/color.py')
| -rw-r--r-- | lib/threads/color.py | 19 |
1 files changed, 11 insertions, 8 deletions
diff --git a/lib/threads/color.py b/lib/threads/color.py index 8dc1ea01..c75778d2 100644 --- a/lib/threads/color.py +++ b/lib/threads/color.py @@ -6,19 +6,24 @@ import colorsys import re -import tinycss2.color3 -from pyembroidery.EmbThread import EmbThread - from inkex import Color +from pyembroidery.EmbThread import EmbThread class ThreadColor(object): hex_str_re = re.compile('#([0-9a-z]{3}|[0-9a-z]{6})', re.I) def __init__(self, color, name=None, number=None, manufacturer=None, description=None, chart=None): - # set colors with a gradient to black (avoiding an error message) - if type(color) == str and color.startswith('url'): + ''' + avoid error messages: + * set colors with a gradient to black + * currentColor should not just be black, but we want to avoid error messages + until inkex will be able to handle this css property + ''' + if type(color) == str and color.startswith(('url', 'currentColor')): color = None + elif type(color) == str and color.startswith('rgb'): + color = tuple(int(value) for value in color[4:-1].split(',')) if color is None: self.rgb = (0, 0, 0) @@ -31,9 +36,7 @@ class ThreadColor(object): self.rgb = (color.get_red(), color.get_green(), color.get_blue()) return elif isinstance(color, str): - self.rgb = tinycss2.color3.parse_color(color) - # remove alpha channel and multiply with 255 - self.rgb = tuple(channel * 255.0 for channel in list(self.rgb)[:-1]) + self.rgb = Color.parse_str(color)[1] elif isinstance(color, (list, tuple)): self.rgb = tuple(color) elif self.hex_str_re.match(color): |
