Python 如何使用PySide快速调整PNG的大小?
我正在尝试制作一个小函数,它将获取一个以两倍于所需大小渲染的缩略图,并使用抗锯齿调整其大小,以便得到一个平滑的缩略图 到目前为止,我得到的是:Python 如何使用PySide快速调整PNG的大小?,python,image,qt,user-interface,pyside,Python,Image,Qt,User Interface,Pyside,我正在尝试制作一个小函数,它将获取一个以两倍于所需大小渲染的缩略图,并使用抗锯齿调整其大小,以便得到一个平滑的缩略图 到目前为止,我得到的是: from PySide import QtGui, QtCore def resizeImage(image, outSize): bitmap = QtGui.QPixmap(image) bitmap.scaled(QtCore.QSize(outSize, outSize),aspectMode=QtCore.Qt.KeepAsp
from PySide import QtGui, QtCore
def resizeImage(image, outSize):
bitmap = QtGui.QPixmap(image)
bitmap.scaled(QtCore.QSize(outSize, outSize),aspectMode=QtCore.Qt.KeepAspectRatio, mode=QtCore.Qt.SmoothTransformation) # original is larger than this
print bitmap.size()
file = QtCore.QFile(image)
file.open(QtCore.QIODevice.WriteOnly)
bitmap.save(file)
file.close()
resizeImage("image.png", outSize = 256)
问题是当我调用bitmap.scaled时,pixmap的大小似乎没有改变-我是否遗漏了一些明显的内容?我以前没有使用PySide,但确实如此。scaled执行就地替换。文档似乎建议它返回一个新的QPixmap,您的代码没有保存它 也许这会有帮助:
bitmap=bitmap.scaled(QtCore.QSize(outSize, outSize),aspectMode=QtCore.Qt.KeepAspectRatio, mode=QtCore.Qt.SmoothTransformation)
这就解决了!我应该早点发现的:I’谢谢你的帮助