From f8cec6f3453c60b43947557d6a84484c80d121ad Mon Sep 17 00:00:00 2001 From: Alvin Penner Date: Sat, 8 Jul 2017 10:30:04 +0000 Subject: Update perspective.py for https://bugs.launchpad.net/inkscape/+bug/1653650. compensate for size of viewbox --- share/extensions/perspective.py | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/share/extensions/perspective.py b/share/extensions/perspective.py index f15deaad5..f7d5be606 100755 --- a/share/extensions/perspective.py +++ b/share/extensions/perspective.py @@ -54,6 +54,15 @@ class Project(inkex.Effect): #obj is selected second scale = self.unittouu('1px') # convert to document units + doc = self.document.getroot() + h = self.unittouu(doc.xpath('@height', namespaces=inkex.NSS)[0]) + # process viewBox height attribute to correct page scaling + viewBox = doc.get('viewBox') + if viewBox: + viewBox2 = viewBox.split(',') + if len(viewBox2) < 4: + viewBox2 = viewBox.split(' ') + scale *= self.unittouu(self.addDocumentUnit(viewBox2[3])) / h obj = self.selected[self.options.ids[0]] envelope = self.selected[self.options.ids[1]] if obj.get(inkex.addNS('type','sodipodi')): -- cgit v1.2.3 From 3ede8c02f7be30bd333044c3e04b1955af467a90 Mon Sep 17 00:00:00 2001 From: Alvin Penner Date: Sat, 8 Jul 2017 10:36:11 +0000 Subject: Update summersnight.py for https://bugs.launchpad.net/inkscape/+bug/1653650. compensate for size of viewbox. --- share/extensions/summersnight.py | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/share/extensions/summersnight.py b/share/extensions/summersnight.py index abc9327e5..a4f15ef1f 100755 --- a/share/extensions/summersnight.py +++ b/share/extensions/summersnight.py @@ -43,6 +43,15 @@ class Project(inkex.Effect): #obj is selected second scale = self.unittouu('1px') # convert to document units + doc = self.document.getroot() + h = self.unittouu(doc.xpath('@height', namespaces=inkex.NSS)[0]) + # process viewBox height attribute to correct page scaling + viewBox = doc.get('viewBox') + if viewBox: + viewBox2 = viewBox.split(',') + if len(viewBox2) < 4: + viewBox2 = viewBox.split(' ') + scale *= self.unittouu(self.addDocumentUnit(viewBox2[3])) / h obj = self.selected[self.options.ids[0]] trafo = self.selected[self.options.ids[1]] if obj.get(inkex.addNS('type','sodipodi')): -- cgit v1.2.3