QT 给图片添加一层颜色遮罩
最近公司需求,在一张带有透明度的图片上增加一层颜色遮罩,记录一下。
1 #include <QImage> 2 #include <QPainter> 3 4 int main() { 5 // 行数 5 6 // 加载原始图像 7 QImage originalImage("path/to/your/image.png"); 8 9 // 行数 9 10 // 创建与原始图像相同尺寸和格式的新图像 11 QImage maskedImage(originalImage.size(), QImage::Format_ARGB32); 12 13 // 行数 13 14 // 设置要使用的颜色遮罩 15 QColor overlayColor(69, 69, 69, 100); // 灰色,100% 不透明度 16 17 // 行数 17 18 // 填充新图像为透明 19 maskedImage.fill(Qt::transparent); 20 21 // 行数 21 22 // 创建一个 QPainter 以在新图像上绘制 23 QPainter painter(&maskedImage); 24 25 // 行数 25 26 // 绘制原始图像 27 painter.drawImage(0, 0, originalImage); 28 29 // 行数 29 30 // 应用颜色遮罩 31 painter.fillRect(maskedImage.rect(), overlayColor); 32 33 // 行数 33 34 // 将生成的遮罩图像保存到文件 35 maskedImage.save("path/to/save/masked_image.png"); 36 37 // 行数 37 38 return 0; 39 }
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 上周热点回顾(2.24-3.2)