[英]PyQt4: Graphics View and Pixmap Size
我正在使用QTDesigner開發用於某些圖像處理任務的GUI。 我在網格布局中彼此之下有兩個圖形視圖。 兩者都應顯示圖像,以后再添加疊加層。
我創建我的Pixmap img_pixmap並將其添加到我的場景中。 然后將該場景添加到我的圖形視圖中。 由於我的圖像遠大於屏幕尺寸,因此我應用fitInView() 。 在代碼中:
self.img_pixmap_p = self.img_scene.addPixmap(img_pixmap)
self.img_view.setScene(self.img_scene)
self.img_scene.setSceneRect(QtCore.QRectF())
self.img_view.fitInView(self.img_scene.sceneRect(), QtCore.Qt.KeepAspectRatio)
到目前為止,還算不錯,但是如何擺脫圖像視圖周圍的空白? 理想情況下,我希望我的像素圖使用圖形視圖的整個寬度並保持寬高比,圖形視圖應相應地調整其高度。 關於如何直接實現這一目標的任何想法?
這是一張可以更好地了解我所得到的圖像:
如您所見,我要避免使用白色邊框。
好的,我按照Pavel的建議做了:
img_aspect_ratio = float(pixmap.size().width()) / pixmap.size().height()
width = img_view.size().width()
img_view.setFixedHeight( width / img_aspect_ratio )
img_view.fitInView(img_scene.sceneRect(), QtCore.Qt.KeepAspectRatio)
當您在每個resizeEvent()
調用此resizeEvent()
時,它都可以正常工作。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.