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()

上述代码生成以下输出 -

qpixmap class