python pyqt5 放大缩小图片
时间: 2024-03-28 12:33:49 浏览: 114
在Python中使用PyQt5可以实现图片的放大和缩小操作。下面是一个简单的示例代码:
```python
import sys
from PyQt5.QtWidgets import QApplication, QLabel, QMainWindow, QVBoxLayout, QWidget
from PyQt5.QtGui import QPixmap, QImage
from PyQt5.QtCore import Qt
class MainWindow(QMainWindow):
def __init__(self):
super().__init__()
self.setWindowTitle("Image Viewer")
self.setGeometry(100, 100, 800, 600)
self.image_label = QLabel()
self.image_label.setAlignment(Qt.AlignCenter)
self.layout = QVBoxLayout()
self.layout.addWidget(self.image_label)
self.central_widget = QWidget()
self.central_widget.setLayout(self.layout)
self.setCentralWidget(self.central_widget)
def load_image(self, image_path):
image = QImage(image_path)
pixmap = QPixmap.fromImage(image)
self.image_label.setPixmap(pixmap)
def scale_image(self, scale_factor):
current_pixmap = self.image_label.pixmap()
scaled_pixmap = current_pixmap.scaled(current_pixmap.width() * scale_factor,
current_pixmap.height() * scale_factor,
Qt.AspectRatioMode.KeepAspectRatio)
self.image_label.setPixmap(scaled_pixmap)
if __name__ == "__main__":
app = QApplication(sys.argv)
window = MainWindow()
window.load_image("image.jpg") # 替换为你的图片路径
window.show()
sys.exit(app.exec_())
```
上述代码创建了一个简单的图片查看器窗口,可以加载并显示指定路径的图片。其中,`load_image`方法用于加载图片,`scale_image`方法用于缩放图片。你可以通过调用`scale_image`方法并传入缩放因子来实现图片的放大和缩小。
阅读全文