Qt怎么实现PNG图片警告去除工具

发布时间:2021-12-15 09:59:54 作者:iii
来源:亿速云 阅读:213

本篇内容介绍了“Qt怎么实现PNG图片警告去除工具”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

一、前言

在新版的Qt5中,我们之前在Qt4中使用的png图片,到了这里经常会报一个警告,libpng warning: iCCP: known incorrect sRGB profile,尽管这种警告眼不见为净,可以忽略,但是对于追求完美的程序员来说,这看起来就是很不爽的事情,可能是因为Qt5增加了png的检查或者使用的png的库的版本不一致导致的吧,处理的办法有好几种,一种是用PS软件或者其他图片编辑软件,重新保存图片的时候不要勾选ICC配置文件,去掉png图像的icc配置文件就可以了,另一种办法是直接使用Qt自己的QImage来实现另存为,既然是QImage那当然完美的支持自家的图片处理咯,肯定不会再有警告啦。

二、代码思路

void frmPngTool::on_btnOk_clicked()
{
    files.clear();

    //将单个文件加入队列
    QString currentFile = ui->txtFile->text().trimmed();
    if (currentFile.isEmpty()) {
        files.append(currentFile);
    }

    //将该目录下的所有png文件存入链表
    QString currentDir = ui->txtDir->text().trimmed();
    if (!currentDir.isEmpty()) {
        QDir imagePath(currentDir);
        QStringList filter;
        filter << "*.png";
        QStringList list = imagePath.entryList(filter);

        foreach (QString str, list) {
            files.append(currentDir + "/" + str);
        }
    }

    ui->progress->setRange(0, files.count());
    ui->progress->setValue(0);

    int count = 0;
    foreach (QString file, files) {
        qDebug() << "current file:" << file;
        QImage image(file);
        image.save(file, "png");
        count++;
        ui->progress->setValue(count);
        qApp->processEvents();
    }

    qDebug() << "finsh";
}

三、效果图

Qt怎么实现PNG图片警告去除工具

“Qt怎么实现PNG图片警告去除工具”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注亿速云网站,小编将为大家输出更多高质量的实用文章!

推荐阅读:
  1. 小程序点击图片实现png转jpg
  2. Idea去除Mapper警告的方法

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

qt

上一篇:golang的filepath包的几个函数的细微区别是什么

下一篇:golang中sync.Once的示例分析

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》