From d06ff488f0977ab52dbf0169d85cc5d7a413e079 Mon Sep 17 00:00:00 2001 From: Lex Neva Date: Sun, 10 Jun 2018 15:13:51 -0400 Subject: fix defaulting of stroke width to 1 --- lib/elements/element.py | 6 +++--- lib/elements/stroke.py | 5 +---- 2 files changed, 4 insertions(+), 7 deletions(-) (limited to 'lib/elements') diff --git a/lib/elements/element.py b/lib/elements/element.py index 42f6c470..39437c9f 100644 --- a/lib/elements/element.py +++ b/lib/elements/element.py @@ -135,10 +135,10 @@ class EmbroideryElement(object): self.node.set("embroider_%s" % name, str(value)) @cache - def get_style(self, style_name): + def get_style(self, style_name, default=None): style = simplestyle.parseStyle(self.node.get("style")) if (style_name not in style): - return None + return default value = style[style_name] if value == 'none': return None @@ -161,7 +161,7 @@ class EmbroideryElement(object): @property @cache def stroke_width(self): - width = self.get_style("stroke-width") + width = self.get_style("stroke-width", "1") if width is None: return 1.0 diff --git a/lib/elements/stroke.py b/lib/elements/stroke.py index d3054132..5239f978 100644 --- a/lib/elements/stroke.py +++ b/lib/elements/stroke.py @@ -57,10 +57,7 @@ class Stroke(EmbroideryElement): def is_running_stitch(self): # using stroke width <= 0.5 pixels to indicate running stitch is deprecated in favor of dashed lines - try: - stroke_width = float(self.get_style("stroke-width")) - except ValueError: - stroke_width = 1 + stroke_width = float(self.get_style("stroke-width", 1)) if self.dashed: return True -- cgit v1.3.1 From f79b3a7a95bba7d927cefd321d52eff819bb9180 Mon Sep 17 00:00:00 2001 From: Lex Neva Date: Sun, 10 Jun 2018 15:43:17 -0400 Subject: default fill to black per SVG spec --- lib/elements/fill.py | 3 ++- lib/extensions/base.py | 2 +- 2 files changed, 3 insertions(+), 2 deletions(-) (limited to 'lib/elements') diff --git a/lib/elements/fill.py b/lib/elements/fill.py index 52a42260..8d1d35f2 100644 --- a/lib/elements/fill.py +++ b/lib/elements/fill.py @@ -27,7 +27,8 @@ class Fill(EmbroideryElement): @property def color(self): - return self.get_style("fill") + # SVG spec says the default fill is black + return self.get_style("fill", "#000000") @property @param('flip', _('Flip fill (start right-to-left)'), type='boolean', default=False) diff --git a/lib/extensions/base.py b/lib/extensions/base.py index 52321cfc..8edfe797 100644 --- a/lib/extensions/base.py +++ b/lib/extensions/base.py @@ -158,7 +158,7 @@ class InkstitchExtension(inkex.Effect): else: classes = [] - if element.get_style("fill"): + if element.get_style("fill", "black"): if element.get_boolean_param("auto_fill", True): classes.append(AutoFill) else: -- cgit v1.3.1 From 83efa9e02fc19a1f4bb0e1524aa601c48c5ca6ef Mon Sep 17 00:00:00 2001 From: Lex Neva Date: Sun, 10 Jun 2018 16:01:37 -0400 Subject: error if satin column set for path with single subpath --- lib/elements/satin_column.py | 2 ++ messages.po | 6 +++++- 2 files changed, 7 insertions(+), 1 deletion(-) (limited to 'lib/elements') diff --git a/lib/elements/satin_column.py b/lib/elements/satin_column.py index 3593db64..1d13c5e0 100644 --- a/lib/elements/satin_column.py +++ b/lib/elements/satin_column.py @@ -97,6 +97,8 @@ class SatinColumn(EmbroideryElement): def flattened_beziers(self): if len(self.csp) == 2: return self.simple_flatten_beziers() + elif len(self.csp) < 2: + self.fatal(_("satin column: %(id)s: at least two subpaths required (%(num)d found)") % dict(num=len(self.csp), id=self.node.get('id'))) else: return self.flatten_beziers_with_rungs() diff --git a/messages.po b/messages.po index 376437e0..02d4aba6 100644 --- a/messages.po +++ b/messages.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: PROJECT VERSION\n" "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" -"POT-Creation-Date: 2018-06-01 20:34-0400\n" +"POT-Creation-Date: 2018-06-10 16:01-0400\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -124,6 +124,10 @@ msgstr "" msgid "Inset amount (default: half of contour underlay inset)" msgstr "" +#, python-format +msgid "satin column: %(id)s: at least two subpaths required (%(num)d found)" +msgstr "" + msgid "" "One or more rails crosses itself, and this is not allowed. Please split " "into multiple satin columns." -- cgit v1.3.1