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类的对象,需提前设置好。

相关推荐
ytttr8734 小时前
隐马尔可夫模型(HMM)MATLAB实现范例
开发语言·算法·matlab
天远Date Lab4 小时前
Python实战:对接天远数据手机号码归属地API,实现精准用户分群与本地化运营
大数据·开发语言·python
listhi5204 小时前
基于Gabor纹理特征与K-means聚类的图像分割(Matlab实现)
开发语言·matlab
qq_433776425 小时前
【无标题】
开发语言·php
Davina_yu6 小时前
Windows 下升级 R 语言至最新版
开发语言·windows·r语言
阿珊和她的猫6 小时前
IIFE:JavaScript 中的立即调用函数表达式
开发语言·javascript·状态模式
listhi5206 小时前
卷积码编码和维特比译码的MATLAB仿真程序
开发语言·matlab
yuan199976 小时前
基于主成分分析(PCA)的故障诊断MATLAB仿真
开发语言·matlab
J_liaty6 小时前
Java版本演进:从JDK 8到JDK 21的特性革命与对比分析
java·开发语言·jdk
翔云 OCR API6 小时前
发票查验接口详细接收参数说明-C#语言集成完整示例-API高效财税管理方案
开发语言·c#