Учебники

PyQt — класс QPixmap

Класс QPixmap обеспечивает представление изображения вне экрана. Он может использоваться как объект QPaintDevice или может быть загружен в другой виджет, обычно метку или кнопку.

У Qt API есть другой аналогичный класс QImage, который оптимизирован для ввода-вывода и других пиксельных манипуляций. Pixmap, с другой стороны, оптимизирован для отображения на экране. Оба формата являются взаимозаменяемыми.

Типы файлов изображений, которые могут быть прочитаны в объект QPixmap, следующие:

BMP Битовая карта Windows
GIF Формат обмена графическими данными (необязательно)
JPG Объединенная группа экспертов по фотографии
JPEG Объединенная группа экспертов по фотографии
PNG Портативная сетевая графика
PBM Portable Bitmap
PGM Портативная серая карта
PPM Портативный Pixmap
XBM X11 Bitmap
XPM X11 Pixmap

Следующие методы полезны при обработке объекта QPixmap —

Sr.No. Методы и описание
1

копия ()

Копирует данные растрового изображения из объекта QRect

2

fromImage ()

Преобразует объект QImage в QPixmap

3

grabWidget ()

Создает растровое изображение из данного виджета

4

grabWindow ()

Создать растровое изображение данных в окне

5

Нагрузка ()

Загружает файл изображения как растровое изображение

6

спасти()

Сохраняет объект QPixmap в виде файла

7

изображать

Преобразует QPixmap в QImage

копия ()

Копирует данные растрового изображения из объекта QRect

fromImage ()

Преобразует объект QImage в QPixmap

grabWidget ()

Создает растровое изображение из данного виджета

grabWindow ()

Создать растровое изображение данных в окне

Нагрузка ()

Загружает файл изображения как растровое изображение

спасти()

Сохраняет объект QPixmap в виде файла

изображать

Преобразует QPixmap в QImage

Наиболее распространенное использование QPixmap — это отображение изображения на ярлыке / кнопке.

пример

В следующем примере показано изображение, отображаемое в QLabel с помощью метода setPixmap (). Полный код выглядит следующим образом —

import sys
from PyQt4.QtCore import *
from PyQt4.QtGui import *

def window():
   app = QApplication(sys.argv)
   win = QWidget()
   l1 = QLabel()
   l1.setPixmap(QPixmap("python.jpg"))
	
   vbox = QVBoxLayout()
   vbox.addWidget(l1)
   win.setLayout(vbox)
   win.setWindowTitle("QPixmap Demo")
   win.show()
   sys.exit(app.exec_())
	
if __name__ == '__main__':
   window()

Приведенный выше код производит следующий вывод —