接下来我们为这个项目添加图像的缩放功能:
添加一个槽函数:
void ShowZoomIn(); //关于图片的缩放功能
添加相应的响应连接
connect(zoomInAction, SIGNAL(triggered()), this, SLOT(ShowZoomIn())); //进行图片放大
槽函数的实现:
//实现图片的放大 void ImageProcessor::ShowZoomIn() { //首先判断是否有照片 if(img.isNull()) return; //没有照片,那就不用放大了 QMatrix martix; //一个图片的存放对象 martix.scale(2, 2); //长和宽都放大2倍 img = img.transformed(martix); //对图片的操作落实 showWidget->imageLabel->setPixmap(QPixmap::fromImage(img)); //改变后的图片放回去 }
同理添加缩小功能:
前面也添加相应的槽函数和连接:
void ShowZoomOut(); //图片缩小
connect(zoomOutAction, SIGNAL(triggered()), this, SLOT(ShowZoomOut())); //进行图片放小
void ImageProcessor::ShowZoomOut() { //首先判断是否有照片 if(img.isNull()) return; //没有照片,那就不用放大了 QMatrix martix; //一个图片的存放对象 martix.scale(0.5, 0.5); //长和宽都放大2倍 img = img.transformed(martix); //对图片的操作落实 showWidget->imageLabel->setPixmap(QPixmap::fromImage(img)); //改变后的图片放回去 }
其他具体的代码基础看前面:http://blog.csdn.net/cutter_point/article/details/42839071
运行结果:
原图:
按钮
放大:
缩小:
时间: 2024-10-11 13:13:28