QT等比例缩放图片

1、这里使用QLabe控件显示图片,如下:

cpp 复制代码
label->setPixmap(QPixmap::fromImage(image_2));

以上是直接原始大小来显示QImage image_2图片。

cpp 复制代码
label->setAlignment(Qt::AlignCenter);

以上代码,是将显示的图片居中展示,默认在竖直方向上居中,所以这里的代码设置的是水平方向上的居中。

效果如下:

2、将图片等比例缩放,如下:

cpp 复制代码
image_2 = image_2.scaled(label->size().width(), label->size().height(), Qt::KeepAspectRatio, Qt::SmoothTransformation);

上述代码,将图像等比缩放,缩放后可显示整幅图片。参数Qt::KeepAspectRatio就是等比缩放的意思。

效果如下:

3、QImage加载图片

cpp 复制代码
QImage image_2;
image_2.load(filePath);

filePath是获取的图片所在的绝对路径。

4、获取QImage中x,y位置的像素值

cpp 复制代码
QRgb pixel = coimage.pixel(x, y);
int red = qRed(pixel);
int blue = qBlue(pixel);
int green = qGreen(pixel);

coimage值得是QImage对象,已经加载过图片的对象。由此可得到图片的rgb值。

5、如何修改QImage的像素值

cpp 复制代码
coimage.setPixel(x, y, qRgba(color.red(), color.green(), color.blue(), qAlpha(pixel)));

通过setPixel函数,设置其rgb值。color变量是QColor类的对象,需提前设置好。

相关推荐
c4fx17 分钟前
Delphi5利用DLL实现窗体的重用
开发语言·delphi·dll
鸽芷咕41 分钟前
【Python报错已解决】ModuleNotFoundError: No module named ‘paddle‘
开发语言·python·机器学习·bug·paddle
Jhxbdks1 小时前
C语言中的一些小知识(二)
c语言·开发语言·笔记
java6666688881 小时前
如何在Java中实现高效的对象映射:Dozer与MapStruct的比较与优化
java·开发语言
Violet永存1 小时前
源码分析:LinkedList
java·开发语言
代码雕刻家1 小时前
数据结构-3.1.栈的基本概念
c语言·开发语言·数据结构
Fan_web1 小时前
JavaScript高级——闭包应用-自定义js模块
开发语言·前端·javascript·css·html
梦想科研社1 小时前
【无人机设计与控制】四旋翼无人机俯仰姿态保持模糊PID控制(带说明报告)
开发语言·算法·数学建模·matlab·无人机
风等雨归期1 小时前
【python】【绘制小程序】动态爱心绘制
开发语言·python·小程序
千穹凌帝1 小时前
SpinalHDL之结构(二)
开发语言·前端·fpga开发