예제 #1
0
    def doPrint(self, target, printer, pdfPrinter, preferences):
        widget = self.plotDict[target]['widget']
        if preferences.savePdf:
            with SceneToPrint(widget):
                painter = QtGui.QPainter(pdfPrinter)
                widget.render(painter)
                del painter

        # create an exporter instance, as an argument give it
        # the item you wish to export
        with SceneToPrint(widget, preferences.gridLinewidth,
                          preferences.curveLinewidth):
            exporter = ImageExporter(widget._graphicsView.scene())

            # set export parameters if needed
            pageWidth = printer.pageRect().width()
            pageHeight = printer.pageRect().height()
            exporter.parameters(
            )['width'] = pageWidth * preferences.printWidth  # (note this also affects height parameter)

            # save to file
            png = exporter.export(toBytes=True)
            if preferences.savePng:
                png.save(DataDirectory.DataDirectory().sequencefile(target +
                                                                    ".png")[0])

            if preferences.doPrint:
                painter = QtGui.QPainter(printer)
                painter.drawImage(
                    QtCore.QPoint(pageWidth * preferences.printX,
                                  pageHeight * preferences.printY), png)
예제 #2
0
 def save_graph(self, filename):
     self._pg_layout.setContentsMargins(20, 20, 20, 20)
     QtGui.QApplication.processEvents()
     if filename.endswith('.png'):
         exporter = ImageExporter(self._pg_layout)
         exporter.export(filename)
     elif filename.endswith('.svg'):
         self._invert_color()
         exporter = SVGExporter(self._pg_layout)
         exporter.export(filename)
         self._norm_color()
     self._pg_layout.setContentsMargins(0, 0, 0, 0)
     QtGui.QApplication.processEvents()
예제 #3
0
    def capture_view_as_image(self, window, outputfile):
        """
        Export an image using pyqtgraph

        FIXME this is not working at the moment
        """
        if window not in (1, 2, 3):
            raise RuntimeError("No such window: %i" % window)

        expimg = self.ortho_views[window - 1].img
        exporter = ImageExporter(expimg)
        exporter.parameters()['width'] = 2000
        exporter.export(str(outputfile))
예제 #4
0
    def exportPlot(self):
        try:
            if int(self.heightEdit.text()) < 0:
                return
            if int(self.widthEdit.text()) < 0:
                return
        except:
            return

        exporter = ImageExporter(self.data_layout)
        name = os.path.splitext(self.filename.text())[0]
        name += '.png' if self.format.currentText() == 'PNG' else '.jpg'
        exporter.parameters()['width'] = int(self.widthEdit.text())
        exporter.parameters()['height'] = int(self.heightEdit.text())
        exporter.export(name)
        self.close()
예제 #5
0
 def save_img(self, filename):
     exporter = ImageExporter(self.img_view_box)
     exporter.parameters()['width'] = 2048
     exporter.export(filename)
예제 #6
0
 def save_png(self, filename):
     exporter = ImageExporter(self.pattern_plot)
     exporter.export(filename)
예제 #7
0
 def save_png(self, filename):
     exporter = ImageExporter(self.spectrum_plot)
     exporter.export(filename)
 def export(self):
     #self.exp = ImageExporterCustom(self)
     self.exp = ImageExporter(self)
     self.exp.export()