def display (sc, title = "SVG scene") : """Display a scene in a Qdialog :Parameters: - `sc` (`SVGScene`) - `title` (str) - window title """ qapp = QApplication.instance() if qapp is None : qapp = QApplication([]) dial = QDialog() dial.setWindowTitle(title) dial.setPalette(QPalette(QColor(255,255,255) ) ) lay = QVBoxLayout(dial) w = QSvgWidget(dial) data = QByteArray(str(to_xml(sc) ) ) w.load(data) r = w.renderer() w.setMinimumSize(r.defaultSize() ) lay.addWidget(w) dial.show() qapp.exec_()
def display(sc, title="SVG scene"): """Display a scene in a Qdialog :Parameters: - `sc` (`SVGScene`) - `title` (str) - window title """ qapp = QApplication.instance() if qapp is None: qapp = QApplication([]) dial = QDialog() dial.setWindowTitle(title) dial.setPalette(QPalette(QColor(255, 255, 255))) lay = QVBoxLayout(dial) w = QSvgWidget(dial) data = QByteArray(str(to_xml(sc))) w.load(data) r = w.renderer() w.setMinimumSize(r.defaultSize()) lay.addWidget(w) dial.show() qapp.exec_()
def save_png (filename, sc, background = (255,255,255, 0) ) : """Create a png image from a scene :Parameters: - `filename` (str) - name to write the image - `sc` (SVGScene) - `background` (int, int, int, int) - background color as (R, G, B, alpha) 0-255 tuple """ qapp = QApplication.instance() if qapp is None : qapp = QApplication([]) r = QSvgRenderer(None) data = QByteArray(str(to_xml(sc) ) ) r.load(data) pix = QPixmap(r.defaultSize() ) pix.fill(QColor(*background) ) painter = QPainter(pix) r.render(painter) painter.end() pix.save(filename)
def save_png(filename, sc, background=(255, 255, 255, 0)): """Create a png image from a scene :Parameters: - `filename` (str) - name to write the image - `sc` (SVGScene) - `background` (int, int, int, int) - background color as (R, G, B, alpha) 0-255 tuple """ qapp = QApplication.instance() if qapp is None: qapp = QApplication([]) r = QSvgRenderer(None) data = QByteArray(str(to_xml(sc))) r.load(data) pix = QPixmap(r.defaultSize()) pix.fill(QColor(*background)) painter = QPainter(pix) r.render(painter) painter.end() pix.save(filename)