summaryrefslogtreecommitdiff
path: root/Build/source/utils/asymptote/GUI/xasySvg.py
diff options
context:
space:
mode:
Diffstat (limited to 'Build/source/utils/asymptote/GUI/xasySvg.py')
-rw-r--r--Build/source/utils/asymptote/GUI/xasySvg.py22
1 files changed, 22 insertions, 0 deletions
diff --git a/Build/source/utils/asymptote/GUI/xasySvg.py b/Build/source/utils/asymptote/GUI/xasySvg.py
new file mode 100644
index 00000000000..a5325f9bdd6
--- /dev/null
+++ b/Build/source/utils/asymptote/GUI/xasySvg.py
@@ -0,0 +1,22 @@
+#!/usr/bin/env python3
+
+import PyQt5.QtGui as Qg
+import PyQt5.QtWidgets as Qw
+import io
+import subprocess
+import sys
+
+class SvgObject():
+ def __init__(self, file: str):
+ self.file=file
+
+ def render(self, dpi:int) -> Qg.QImage:
+ try:
+ rawDataProc = subprocess.Popen(['rsvg-convert', '--dpi-x', str(dpi),
+ '--dpi-y', str(dpi), self.file],
+ stdout=subprocess.PIPE)
+ except:
+ Qw.QMessageBox.about(None,'rsvg-convert missing','Please install rsvg-convert version >= 2.40 in your path.')
+ sys.exit(-1)
+
+ return Qg.QImage.fromData(rawDataProc.stdout.read(), 'PNG')