PyQt5 - Classe QPixmap
QPixmapclasse fornece uma representação fora da tela de uma imagem. Ele pode ser usado como um objeto QPaintDevice ou pode ser carregado em outro widget, normalmente um rótulo ou botão.
Qt API tem outra classe semelhante QImage, que é otimizado para E / S e outras manipulações de pixels. Pixmap, por outro lado, é otimizado para ser mostrado na tela. Ambos os formatos são interconvertíveis.
Os tipos de arquivos de imagem que podem ser lidos em um objeto QPixmap são os seguintes -
BMP | Bitmap do Windows |
GIF | Formato de intercâmbio gráfico (opcional) |
JPG | Joint Photographic Experts Group |
JPEG | Joint Photographic Experts Group |
PNG | Gráficos Portáteis de Rede |
PBM | Bitmap portátil |
PGM | Graymap portátil |
PPM | Pixmap portátil |
XBM | Bitmap X11 |
XPM | X11 Pixmap |
Os métodos a seguir são úteis para lidar com o objeto QPixmap -
Sr. Não. | Métodos e Descrição |
---|---|
1 | copy() Copia dados de pixmap de um objeto QRect |
2 | fromImage() Converte o objeto QImage em QPixmap |
3 | grabWidget() Cria um pixmap a partir do widget fornecido |
4 | grabWindow() Crie pixmap de dados em uma janela |
5 | Load() Carrega um arquivo de imagem como pixmap |
6 | save() Salva o objeto QPixmap como um arquivo |
7 | toImage Converte um QPixmap em QImage |
O uso mais comum do QPixmap é exibir a imagem em uma etiqueta / botão.
Exemplo
O exemplo a seguir mostra uma imagem exibida em um QLabel usando o setPixmap() método.
O código completo é o seguinte -
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()
O código acima produz a seguinte saída -