Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- class ImageViewer(QtWidgets.QMainWindow):
- def __init__(self):
- super(ImageViewer, self).__init__()
- self.scene = QtWidgets.QGraphicsScene()
- self.imageLabel = QtWidgets.QLabel()
- self.cropLabel = QtWidgets.QLabel()
- self.scrollArea = QtWidgets.QScrollArea()
- self.scrollArea.setWidget(self.imageLabel)
- self.setCentralWidget(widget)
- self.scene.addWidget(splitter)
- self.view = QtWidgets.QGraphicsView(self.scene)
- self.view.setMouseTracking(True)
- self.view.setDragMode(QtWidgets.QGraphicsView.RubberBandDrag)
- def mousePressEvent(self, eventQMouseEvent):
- print("pressed")
- self.originQPoint = self.view.mapToScene(eventQMouseEvent.pos())
- self.currentQRubberBand = QtWidgets.QRubberBand(QtWidgets.QRubberBand.Rectangle, self)
- self.currentQRubberBand.setGeometry(QtCore.QRect(self.originQPoint, QtCore.QSize()))
- self.currentQRubberBand.show()
- def mouseMoveEvent(self, eventQMouseEvent):
- self.currentQRubberBand.setGeometry(QtCore.QRect(self.originQPoint, eventQMouseEvent.pos()).normalized())
- def mouseReleaseEvent (self, eventQMouseEvent):
- #self.currentQRubberBand.hide()
- currentQRect = self.currentQRubberBand.geometry()
- print(currentQRect)
- self.currentQRubberBand.deleteLater()
- cropPixmap = self.pixmap.copy(currentQRect)
- self.cropLabel.setPixmap(cropPixmap)
- cropPixmap.save('output.png')
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement