Beispiel #1
0
    def printMe(self, painter, rect):
        # redirect table's painting on a pixmap

        view = self.viewport() if hasattr(self, "viewport") else self

        pixmap = QPixmap.grabWidget(view, view.rect())

        QPainter.setRedirected(view, pixmap)
        event = QPaintEvent(QRect(0, 0, view.width(), view.height()))
        QApplication.sendEvent(view, event)
        QPainter.restoreRedirected(view)

        # print scaled pixmap
        pixmap = pixmap.scaled(rect.width(), rect.height(), Qt.KeepAspectRatio, Qt.SmoothTransformation)
        painter.drawPixmap(rect, pixmap, pixmap.rect())