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()
Приведенный выше код дает следующий вывод -