首页 > 编程知识 正文

qt双缓冲绘图(Qt自适应图片之scaled()函数详解)

时间:2023-05-04 13:47:05 阅读:122354 作者:2464

有关更改窗口组件以调整窗口背景图像大小的详细信息,通常使用Qt附带的scaled ()函数。 绘图设备类(如QImage和QPixmap )提供了scaled ()函数。

scaled ()是一个重载函数,它根据指定的宽度和高度,返回根据长宽比和变换模式从原始图像缩放的图像,如果宽度和高度为0,则返回空图像

因此,通过获取控件更改后的宽度和高度,可以设置图像转换的宽度和高度转换比例,然后在scaled ()后退时重新绘制,以适应窗口。 以下为例:

void构件:3360 paint event (qpaintevent * ) qimage img (unsigned char * ) im.data,im.cols,im.rows,qimage 3360 qqa if(0==flag ) painter.drawimage (0,0,nImg ); /*必须标记位进行判断,在呈现控件之前,size为NULL,因此scaled ()的返回值也为NULL,表示nImg为空(*/elseif )1==flag ),nimg=nimg }

注:如果图像放大率较大,建议提高原始资源图像的分辨率。 如果不调高,放大后图像会变得模糊。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。