91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》
  • 首頁 > 
  • 教程 > 
  • 開發技術 > 
  • python GUI庫圖形界面開發之PyQt5圖片顯示控件QPixmap詳細使用方法與實例

python GUI庫圖形界面開發之PyQt5圖片顯示控件QPixmap詳細使用方法與實例

發布時間:2020-10-12 04:32:01 來源:腳本之家 閱讀:302 作者:jia666666 欄目:開發技術

PyQt5圖片顯示控件QPixmap介紹

QPixmap類用于繪圖設備的圖像顯示,它可以作為一個QPainterDevice對象,也可以加載到一個控件中,通常是標簽或者按鈕,用于在標簽或按鈕上顯示圖像

QPixmap可以讀取的圖像文件類型有BMP,GIF,JPG等

QPixmap類中常用的方法

方法 描述
copy() 從QRect對象復制到QPixmap對象
fromImage() 將QImage對象轉換為QPixmap對象
grabWidget() 從給定的一個窗口小控件創建一個像素圖
grabWindow() 在窗口創建數據的像素圖
load() 加載圖像文件作為QPixmap對象
save() 將QPixmap對象保存為文件
toImage() 將QPixmap對象轉換為QImage對象

QPixmap的使用實例

import sys
from PyQt5.QtGui import *
from PyQt5.QtWidgets import *
from PyQt5.QtCore import *

class QpixmapDemo(QWidget):
  def __init__(self,parent=None):
    super(QpixmapDemo, self).__init__(parent)
    self.setWindowTitle('QPixmap例子')

    layout=QVBoxLayout()

    lab1=QLabel()
    lab1.setPixmap(QPixmap('\images\python.jpg'))

    layout.addWidget(lab1)

    self.setLayout(layout)

if __name__ == '__main__':
  app = QApplication(sys.argv)
  demo =QpixmapDemo()
  demo.show()
  sys.exit(app.exec_())

效果如圖

python GUI庫圖形界面開發之PyQt5圖片顯示控件QPixmap詳細使用方法與實例

代碼分析

在這個例子中,使用setPixmap()將圖像顯示在QLabel上

lab1=QLabel()
    lab1.setPixmap(QPixmap('\images\python.jpg'))

QImage與QPixmap區別

不同平臺,依賴、存儲不同

QPixmap依賴于硬件,QImage不依賴于硬件。

在X11, Mac 以及 Symbian平臺上。

QImage: 因為它是存儲在客戶端,往QImage上繪圖比較快,但顯示它則比較慢。QPixmap: 具體實現是依賴于系統的,它是存儲在服務器端,往QPixmap上繪圖比較慢,但顯示它則比較快。但在Windows平臺上則是是一樣的,因為它們都存儲在客戶端,并不使用任何的GDI資源,可能看起來并沒有多大區別。

目前的Qt會把QPixmap都存儲在graphics memory中,這明顯是依賴硬件的。因此我們對QPixmap的使用需要格外注意。

那么Qt為什么要這么做呢?很簡單,設計之初QPixmap就是用來加速顯示的,例如我們在paint的時候用QPixmap就會比用其他類的效果好許多。

用處分工不同

QPixmap主要是用于繪圖,針對屏幕顯示而最佳化設計,QImage主要是為圖像I/O、圖片訪問和像素修改而設計的。

當圖片小的情況下,直接用QPixmap進行加載,畫圖時無所謂,當圖片大的時候如果直接用QPixmap進行加載,會占很大的內存,一般一張幾十K的圖片,用QPixmap加載進來會放大很多倍,所以一般圖片大的情況下,用QImage進行加載,然后轉乘QPixmap用戶繪制。QPixmap繪制效果是最好的。

總結:

對于顯示小圖片時,可以用QPixmap進行加載,繪畫圖片。當繪畫大圖片時候,此時最好實現QImage進行加載,因為QImage本身主要是為圖像I/O、圖片訪問和像素修改而設計的,它可以實現對圖片旋轉、縮放等。然后通過QPixmap實現繪圖。

本文詳細介紹了PyQt5圖片顯示控件QPixmap詳細使用方法與實例,還包括PyQt5中QImage控件與QPixmap控件的區別,更多關于這方面的知識請查看下面的相關鏈接

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

墨江| 富宁县| 湟中县| 蒙阴县| 会同县| 永寿县| 天气| 海原县| 杂多县| 观塘区| 遵义市| 双牌县| 安图县| 长治市| 故城县| 兴化市| 大同县| 息烽县| 安阳市| 盘锦市| 横峰县| 册亨县| 娄底市| 麻城市| 中江县| 绥德县| 介休市| 神农架林区| 镇坪县| 紫阳县| 余姚市| 九龙坡区| 山阳县| 长治市| 凤山市| 扶沟县| 綦江县| 宜川县| 疏勒县| 页游| 昆山市|