summaryrefslogtreecommitdiff
path: root/lib/extensions/commands_scale_symbols.py
diff options
context:
space:
mode:
Diffstat (limited to 'lib/extensions/commands_scale_symbols.py')
-rw-r--r--lib/extensions/commands_scale_symbols.py23
1 files changed, 23 insertions, 0 deletions
diff --git a/lib/extensions/commands_scale_symbols.py b/lib/extensions/commands_scale_symbols.py
new file mode 100644
index 00000000..2e025000
--- /dev/null
+++ b/lib/extensions/commands_scale_symbols.py
@@ -0,0 +1,23 @@
+# Authors: see git history
+#
+# Copyright (c) 2010 Authors
+# Licensed under the GNU GPL version 3.0 or later. See the file LICENSE for details.
+
+from inkex import NSS, Transform
+
+from .base import InkstitchExtension
+
+
+class CommandsScaleSymbols(InkstitchExtension):
+ def __init__(self, *args, **kwargs):
+ InkstitchExtension.__init__(self, *args, **kwargs)
+ self.arg_parser.add_argument("-s", "--size", dest="size", type=float, default=1)
+
+ def effect(self):
+ size = self.options.size
+
+ svg = self.document.getroot()
+ command_symbols = svg.xpath(".//svg:symbol[starts-with(@id,'inkstitch_')]", namespaces=NSS)
+ for symbol in command_symbols:
+ transform = Transform(symbol.get('transform')).add_scale(size)
+ symbol.set('transform', str(transform))