【Qt5开发及实例】13、实现一个简单的文本编辑器2

本文介绍如何在项目中实现图片的放大与缩小功能,通过槽函数响应用户操作,并使用QMatrix进行图片尺寸调整。

接下来我们为这个项目添加图像的缩放功能:


添加一个槽函数:

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


运行结果:

原图:



按钮

放大:

缩小:



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值