Discuz! Board

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 1144|回复: 0
打印 上一主题 下一主题

qt中常见的图片叠加模式

[复制链接]

1228

主题

1997

帖子

7586

积分

认证用户组

Rank: 5Rank: 5

积分
7586
跳转到指定楼层
楼主
发表于 2020-2-25 18:33:45 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 Qter 于 2020-2-25 18:36 编辑

Qt的QPainter::CompositionMode提供了多种图像叠加的模式。
常见的有QPainter::CompositionMode_SourceOver, QPainter::CompositionMode_SourceAtop,QPainter::CompositionMode_DestinationOver和QPainter::CompositionMode_DestinationAtop。
现在逐个描述这四种模式的效果。从http://www.tuicool.com/articles/NF3qIb下载了两幅尺寸相等图片:

现在用第一幅图片做掩盖,与第二幅图片合成
1)QPainter::CompositionMode_DestinationOver

注: m_mask和m_img都是QImage类型的变量,也是MainWindow类的成员。一个代表掩盖图,一个代表花瓶图。运行程序时,MainWindow的构造函数会先询问哪一个文件是被遮挡的花瓶图。你选定之后,MainWindow会再次询问哪一个是掩盖图。选定之后,程序自动调用paintEvent,把两个图合成。效果:2)CompositionMode_DestinationAtop将painter.setCompositionMode(QPainter::CompositionMode_DestinationOver)一句改为painter.setCompositionMode(QPainter::CompositionMode_DestinationAtop)即可。效果和1)相同。3)CompositionMode_SourceAtop将painter.setCompositionMode(QPainter::CompositionMode_DestinationOver)一句改为painter.setCompositionMode(QPainter::CompositionMode_SourceAtop)即可。效果:4)CompositionMode_SourceOver。遮盖不起作用。
————————————————
版权声明:本文为CSDN博主「漫天飞舞的雪花」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/lvdepeng123/article/details/79322823
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|firemail ( 粤ICP备15085507号-1 )

GMT+8, 2024-5-9 05:39 , Processed in 0.054737 second(s), 19 queries .

Powered by Discuz! X3

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表