Pyqt5 简明教程
PyQt5 - QPixmap Class
QPixmap 类提供图像的非屏幕表示。它可以用作 QPaintDevice 对象,也可以加载到另一个小部件,通常是标签或按钮。
Qt API 还有另一个类似类 QImage ,经过优化,可进行 I/O 及其他像素操作。另一方面,Pixmap 已针对显示在屏幕上进行了优化。两种格式可以相互转换。
可以读入 QPixmap 中的图像文件类型如下 -
BMP |
Windows Bitmap |
GIF |
Graphic Interchange Format (optional) |
JPG |
Joint Photographic Experts Group |
JPEG |
Joint Photographic Experts Group |
PNG |
Portable Network Graphics |
PBM |
Portable Bitmap |
PGM |
Portable Graymap |
PPM |
Portable Pixmap |
XBM |
X11 Bitmap |
XPM |
X11 Pixmap |
以下方法对于处理 QPixmap 对象很有用 -
Sr.No. |
Methods & Description |
1 |
copy() 从 QRect 对象复制像素图数据 |
2 |
fromImage() 将 QImage 对象转换为 QPixmap |
3 |
grabWidget() 从给定小部件创建像素图 |
4 |
grabWindow() 创建窗口中数据的像素图 |
5 |
Load() 将图像文件加载为像素图 |
6 |
save() 保存 QPixmap 对象为文件 |
7 |
toImage 将 QPixmap 转换为 QImage |
QPixmap 最常见的用途是在标签/按钮上显示图像。
Example
以下示例显示了通过使用 setPixmap() 方法在 QLabel 上显示的图像。
完整代码如下所示:
import sys
from PyQt5.QtCore import *
from PyQt5.QtGui import *
from PyQt5.QtWidgets import *
def window():
app = QApplication(sys.argv)
win = QWidget()
l1 = QLabel()
l1.setPixmap(QPixmap("python.png"))
vbox = QVBoxLayout()
vbox.addWidget(l1)
win.setLayout(vbox)
win.setWindowTitle("QPixmap Demo")
win.show()
sys.exit(app.exec_())
if __name__ == '__main__':
window()
上述代码生成以下输出 -