PyQt - Класс QPixmap
QPixmapкласс обеспечивает представление изображения за пределами экрана. Его можно использовать как объект QPaintDevice или загрузить в другой виджет, обычно в метку или кнопку.
Qt API имеет еще один аналогичный класс QImage, который оптимизирован для ввода-вывода и других манипуляций с пикселями. Pixmap, с другой стороны, оптимизирован для отображения на экране. Оба формата взаимно конвертируемы.
Типы файлов изображений, которые могут быть прочитаны в объекте QPixmap, следующие:
| BMP | Растровое изображение Windows |
| Гифка | Графический формат обмена (необязательно) |
| JPG | Объединенная группа экспертов в области фотографии |
| JPEG | Объединенная группа экспертов в области фотографии |
| PNG | Переносимая сетевая графика |
| PBM | Переносимое растровое изображение |
| PGM | Портативный Graymap |
| PPM | Portable Pixmap |
| XBM | Растровое изображение X11 |
| XPM | X11 Pixmap |
Следующие методы полезны при обработке объекта QPixmap:
| Sr. No. | Методы и описание |
|---|---|
| 1 | copy() Копирует данные растрового изображения из объекта QRect |
| 2 | fromImage() Преобразует объект QImage в QPixmap |
| 3 | grabWidget() Создает изображение из заданного виджета |
| 4 | grabWindow() Создать растровое изображение данных в окне |
| 5 | Load() Загружает файл изображения как растровое изображение |
| 6 | save() Сохраняет объект QPixmap как файл |
| 7 | toImage Преобразует 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()
Приведенный выше код дает следующий вывод -