QPixmap的尺寸设置

问题描述:

在控件上使用QPixmap时,希望能重新修改图片的分辨率,而不是使用图片的原始分辨率

解决方法:

主要有两种方法

  1. 设置控件的尺寸,例如QPixmap被传入一个QLabel控件时,可以通过设置QLabel控件的尺寸来对QPixmap进行重新裁切。

pix_img = QtGui.QPixmap('./img.png')
label = QtWidget.QLabel()

# 设置label的尺寸
label.setMaximumSize(25, 25)

# 把pix_img传递给label
label.setPixmap(pix_img)

# 设置pix_img填充满Label
label.setScaledContents(True)

这样做的缺点是每个label都需要设置一次,比较繁琐。

  1. 另一种方法可以直接对Pixmap进行设置

pix_img = QtGui.QPixmap('./img.png')

# 使用scaled方法把 pix_img 的分辨率设置为25像素*25像素
# KeepAspectRatio 可以保留宽高比
# 注意这里需要有一个变量接受属性变更后的地址
pix_img = pix_img.scaled(25, 25, QtCore.Qt.KeepAspectRatio)

你可能感兴趣的:(PySide2)