我有一个来自像素图的标签集,如下所示:
QLabel* label_image;
label_image= new QLabel (this);
label_image->setGeometry(0, 0, 500, 30);
QPixmap pm;
pm ...
label_image->setPixmap(pm);
我现在想将它旋转 90 度。怎么做?
您在这里有两个选择。第一个是子类化 QLabel 并提供您需要的旋转功能。或者,您可以使用 QTransform 旋转您在 QLabel 上设置的 QPixmap。
这个链接并没有反刍答案,而是解释了如何进行旋转并保持图像的原始大小。
由于无效链接更新...
本质上,你不能旋转实际的标签,但你可以旋转像素图,然后在标签小部件上设置它
QPixmap pm;
...
QTransform trans;
trans.rotate(90);
label_image->setPixmap(pm.transformed(trans));
如果继续旋转同一张图像,它会变形,因此请确保任何旋转始终来自存储的、未旋转的像素图。