summaryrefslogtreecommitdiffstats
path: root/share/extensions
diff options
context:
space:
mode:
authorAlvin Penner <penner@vaxxine.com>2017-07-08 10:30:04 +0000
committerAlvin Penner <penner@vaxxine.com>2017-07-08 10:30:04 +0000
commitf8cec6f3453c60b43947557d6a84484c80d121ad (patch)
treebd470c1478bc3d60249c65794c513e2d51a0c61c /share/extensions
parentUpdate dxf_input.py for LP Bug #1700582 (diff)
downloadinkscape-f8cec6f3453c60b43947557d6a84484c80d121ad.tar.gz
inkscape-f8cec6f3453c60b43947557d6a84484c80d121ad.zip
Update perspective.py for https://bugs.launchpad.net/inkscape/+bug/1653650.
compensate for size of viewbox
Diffstat (limited to 'share/extensions')
-rwxr-xr-xshare/extensions/perspective.py9
1 files changed, 9 insertions, 0 deletions
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')):