def save(self, fname, format, draft): if is_text_string(fname): if format == "pdf": self.app = guidata.qapplication() if draft: mode = QPrinter.ScreenResolution else: mode = QPrinter.HighResolution printer = QPrinter(mode) printer.setOutputFormat(QPrinter.PdfFormat) printer.setOrientation(QPrinter.Landscape) printer.setOutputFileName(fname) printer.setCreator('guiqwt.pyplot') self.print_(printer) else: if self.win is None: self.show() if PYQT5: pixmap = self.win.centralWidget().grab() else: pixmap = QPixmap.grabWidget(self.win.centralWidget()) pixmap.save(fname, format.upper()) else: # Buffer fd = fname assert hasattr(fd, 'write'), "object is not file-like as expected" if self.win is None: self.show() pixmap = QPixmap.grabWidget(self.win.centralWidget()) buff = QBuffer() buff.open(QIODevice.ReadWrite) pixmap.save(buff, format.upper()) fd.write(buff.data()) buff.close() fd.seek(0)
def copy_to_clipboard(self): """Copy widget's window to clipboard""" clipboard = QApplication.clipboard() if PYQT5: pixmap = self.grab() else: pixmap = QPixmap.grabWidget(self) clipboard.setPixmap(pixmap)
def save_widget(self, fname): """Grab widget's window and save it to filename (*.png, *.pdf)""" fname = to_text_string(fname) if fname.lower().endswith('.pdf'): printer = QPrinter() printer.setOutputFormat(QPrinter.PdfFormat) printer.setOrientation(QPrinter.Landscape) printer.setOutputFileName(fname) printer.setCreator('guidata') self.print_(printer) elif fname.lower().endswith('.png'): pixmap = QPixmap.grabWidget(self) pixmap.save(fname, 'PNG') else: raise RuntimeError(_("Unknown file extension"))
def save_widget(self, fname): """Grab widget's window and save it to filename (\*.png, \*.pdf)""" fname = to_text_string(fname) if fname.lower().endswith('.pdf'): printer = QPrinter() printer.setOutputFormat(QPrinter.PdfFormat) printer.setOrientation(QPrinter.Landscape) printer.setOutputFileName(fname) printer.setCreator('guidata') self.print_(printer) elif fname.lower().endswith('.png'): if PYQT5: pixmap = self.grab() else: pixmap = QPixmap.grabWidget(self) pixmap.save(fname, 'PNG') else: raise RuntimeError(_("Unknown file extension"))
def copy_to_clipboard(self): """Copy widget's window to clipboard""" clipboard = QApplication.clipboard() clipboard.setPixmap(QPixmap.grabWidget(self))