同様の質問がここで行われましたが、画像を再スケーリングする方法の説明はありません。これまでのところ、 C ++の仕様と、のリファレンスガイドしか見つかりませんでした。しかし、後者はQPixmapへの参照を持っていないようです。QPixmap
pyQT4
質問:最初のリンクのコードに基づいて完全な画像の再スケーリングされたバージョンを表示する方法、および/またはpyQt4
仕様を見つけることができる場所を知っている人はいますか?
QPixmap.scaledToHeightまたはQPixmap.scaledToWidthメソッドを使用できます。
import sys
from PyQt4 import QtGui
app = QtGui.QApplication(sys.argv)
window = QtGui.QMainWindow()
window.setGeometry(0, 0, 400, 200)
pic = QtGui.QLabel(window)
pic.setGeometry(10, 10, 400, 200)
pixmap = QtGui.QPixmap(FILENAME)
pixmap = pixmap.scaledToHeight(200)
pic.setPixmap(pixmap)
window.show()
sys.exit(app.exec_())
PyQTクラス(QPixmapを含む)に関するドキュメントはここにあります。
怠惰でドキュメントを読みたくないときは、次のように使用します。
def describe(obj):
for key in dir(obj):
try:
val = getattr(obj, key)
except AttributeError:
continue
if callable(val):
help(val)
else:
print('{k} => {v}'.format(k = key, v = val))
print('-'*80)
pixmap = QtGui.QPixmap(FILENAME)
describe(pixmap)
これは、に渡されたオブジェクトのすべての属性に関する多くの出力を出力しますdescribe
。-> QPixmap
この場合、これらは新しいを返すメソッドであるため、文字列を検索することで関連するメソッドを見つけることができますQPixmap
。scaledToHeight
それが私が見つけた方法scaledToWidth
です。