在Qt中旋转图像
在我的应用程序中,我想旋转图像(我已将图像设置为在Qt中旋转图像,qt,user-interface,Qt,User Interface,在我的应用程序中,我想旋转图像(我已将图像设置为QLabel)。我已经设置了一个QPushButton,点击该按钮,我想在四个方向上旋转我的图像(右->下->左->上) 有什么帮助吗?假设您有一个指向QLabel的指针,您可以执行以下操作 void MyWidget::rotateLabel() { QPixmap pixmap(*my_label->pixmap()); QMatrix rm; rm.rotate(90); pixmap = pixmap.
QLabel
)。我已经设置了一个QPushButton
,点击该按钮,我想在四个方向上旋转我的图像(右->下->左->上)
有什么帮助吗?假设您有一个指向QLabel的指针,您可以执行以下操作
void MyWidget::rotateLabel()
{
QPixmap pixmap(*my_label->pixmap());
QMatrix rm;
rm.rotate(90);
pixmap = pixmap.transformed(rm);
my_label->setPixmap(pixmap);
}
这将引导您在四个应用程序中完成右、下、左、上操作。QMatrix已被弃用,因此您可以使用QTransform
void MyWidget::rotateLabel()
{
QPixmap pixmap(*my_label->pixmap());
QTransform tr;
tr.rotate(90);
pixmap = pixmap.transformed(tr);
my_label->setPixmap(pixmap);
}
在第一行中,您使用我的标签->pixmap():“QPixmap::QPixmap(QPixmapData*)”:无法将参数1从“const QPixmap*”转换为“QPixmapData*”“+1:很酷的作品!我只想补充一句。同时对QMatrix进行了润滑。用QTransform替换QMatrix更符合Qt4.8和Qt5的要求。如果从磁盘加载并保存图像,则不要这样做,否则会丢失元数据。