QT软件开发: 访问QImage每个像素点填充指定颜色

简介: QT软件开发: 访问QImage每个像素点填充指定颜色

需求:  需要将QImage加载的图片里指定的颜色值替换成另一种指定的颜色。

示例代码:

    QImage image;
    QString filename=QFileDialog::getOpenFileName(this,"选择打开的文件","C:/",tr("*.bmp *.jpg *.png"));
    //filename==选择文件的绝对路径
    //加载图片
    image.load(filename);
    int w,h;
    //得到图片的宽高
    w=image.width();
    h=image.height();
    //遍历每个像素点
    for(int i=0;i<h;i++)
    {
        for(int j=0;j<w;j++)
        {
             QRgb rgb=image.pixel(j,i);
             if(rgb==0)  //如果是透明色(全透明的颜色). 就填充成黑色
             {
                 image.setPixel(j,i,0xFF000000);
             }
        }
    }
    //保存为新图片
    image.save("D:/linux-share-dir/test/123.png");
目录
相关文章
|
4天前
|
存储 Java C++
QT源码拾贝0-5(qimage和qpainter)
这篇文章介绍了在Qt源码中qimage和qpainter的使用,包括线程池的使用、智能指针的存储、std::exchange函数的应用、获取类对象的方法以及QChar字节操作。
QT源码拾贝0-5(qimage和qpainter)
|
2月前
【Qt 学习笔记】Qt窗口 | 标准对话框 | 颜色对话框QColorDialog
【Qt 学习笔记】Qt窗口 | 标准对话框 | 颜色对话框QColorDialog
247 3
|
5月前
|
编解码 算法 vr&ar
深度剖析FFmpeg视频解码后的帧处理到Qt显示 从AVFrame到QImage的转换(二)
深度剖析FFmpeg视频解码后的帧处理到Qt显示 从AVFrame到QImage的转换
194 1
|
5月前
|
存储 编解码 算法
深度剖析FFmpeg视频解码后的帧处理到Qt显示 从AVFrame到QImage的转换(一)
深度剖析FFmpeg视频解码后的帧处理到Qt显示 从AVFrame到QImage的转换
342 1
|
4月前
Qt颜色、文件、字体对话框
Qt颜色、文件、字体对话框
|
5月前
|
存储 算法 编译器
【ffmpeg 到Qt的图片格式转换】精彩的像素:深入解析 AVFrame 到 QImage 的转换
【ffmpeg 到Qt的图片格式转换】精彩的像素:深入解析 AVFrame 到 QImage 的转换
206 0
|
11月前
《QT从基础到进阶·十三》QPixmap、QImage的缩放——
《QT从基础到进阶·十三》QPixmap、QImage的缩放——
222 0
关于 Qt部署在RV1126的arm-linux系统上使用QImage缩放,drawXXXX缩放无效问题 的解决方法
关于 Qt部署在RV1126的arm-linux系统上使用QImage缩放,drawXXXX缩放无效问题 的解决方法
关于 Qt部署在RV1126的arm-linux系统上使用QImage缩放,drawXXXX缩放无效问题 的解决方法
Qt实用技巧:测试QImage加载解码、QImage使用原数据、QImage格式转换等等的时间消耗
Qt实用技巧:测试QImage加载解码、QImage使用原数据、QImage格式转换等等的时间消耗