diff options
| author | Kaalleen <36401965+kaalleen@users.noreply.github.com> | 2020-04-01 18:50:14 +0200 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2020-04-01 18:50:14 +0200 |
| commit | facf1817927be7e0905dc398aa53464a4f244826 (patch) | |
| tree | e480054db8e7d2106b20077abaa04197dc242e66 /lib/extensions/zip.py | |
| parent | 13f93ea1515c296335874552930bb2f5f14f977d (diff) | |
Option to include SVG in ZIP file (#648)
Diffstat (limited to 'lib/extensions/zip.py')
| -rw-r--r-- | lib/extensions/zip.py | 15 |
1 files changed, 12 insertions, 3 deletions
diff --git a/lib/extensions/zip.py b/lib/extensions/zip.py index 2376f79a..8ff2cb5c 100644 --- a/lib/extensions/zip.py +++ b/lib/extensions/zip.py @@ -1,14 +1,16 @@ -import sys import os +import sys import tempfile from zipfile import ZipFile + +import inkex import pyembroidery -from .base import InkstitchExtension from ..i18n import _ from ..output import write_embroidery_file from ..stitch_plan import patches_to_stitch_plan from ..svg import PIXELS_PER_MM +from .base import InkstitchExtension class Zip(InkstitchExtension): @@ -26,6 +28,8 @@ class Zip(InkstitchExtension): extension = format['extension'] self.OptionParser.add_option('--format-%s' % extension, type="inkbool", dest=extension) self.formats.append(extension) + self.OptionParser.add_option('--format-svg', type="inkbool", dest='svg') + self.formats.append('svg') def effect(self): if not self.get_elements(): @@ -42,7 +46,12 @@ class Zip(InkstitchExtension): for format in self.formats: if getattr(self.options, format): output_file = os.path.join(path, "%s.%s" % (base_file_name, format)) - write_embroidery_file(output_file, stitch_plan, self.document.getroot()) + if not format == 'svg': + write_embroidery_file(output_file, stitch_plan, self.document.getroot()) + else: + output = open(output_file, 'w') + output.write(inkex.etree.tostring(self.document.getroot())) + output.close() files.append(output_file) if not files: |
