本篇文章的样例都是在下面的底层控件中运行的:

import QtQuick 2.12
import QtQuick.Controls 2.5
import QtGraphicalEffects 1.12//处理用控件的来源
ApplicationWindow {visible: true;width: 600;height: 300;title: qsTr("GraphicalEffect_Test");
}

用到的图片素材:bg.png / bt.png

Blend——混合:使用混合模式将两个Item叠加显示
属性:

  • cached:bool型
    此属性以缓存像素的模式输出,可以提高渲染性能,但是占用内存会增加,默认值为false
    此外,当要渲染的源控件为动画类型的时候,这个属性必须设置为false

  • foregroundSource:var型

  • source: var型
    简单理解就说后者为混合渲染中的基底组件(位于底层),后者为覆盖其上的组件(位于顶层),下面做简单样例(model中的average为求重叠区域的平均像素)


PS:在使用Drag拖动元素的同时,Blend生成的效果不会主动更新,默认保持anchors.centerIn的状态

***Blend所做的操作都是以foregroundSource为参照操作Source中像素的值

  • mode:string型
    这个属性决定了叠加渲染的模式,类型有以下几种,直接看图的话效果更为直观:
  • normal:简单叠加
  • addition:重合区域像素加法(系数未知)
  • average:重合区域像素取平均(系数未知)
  • color:重写重合区域,结合参照亮度色调和饱和度
  • colorBurn:使暗的像素更暗
  • colorDodge:使重叠部分中只有fore中亮的元素更亮,都为暗的部分则不变
  • darken:明亮度降低
  • darkerColor:取重叠部分亮度更低的值
  • difference:取重叠部分像素RBG差的绝对值组成的像素
  • divide:Source像素RBG值被对应fore中像素RBG除
  • exclusion:写入对比度减小的像素差
  • hardLight:亮的更亮,暗的更暗
  • hue:饱和度结合
  • lighten:取重叠部分较亮的像素
  • lightColor:取重叠部分由RGB得出的更亮的像素
  • lightness:取重叠部分亮度结参照合饱和度和色调得结果
  • multiply:取重叠部分RGB乘得像素
  • negation:取绝对像素分量差
  • saturation:饱和度结合亮度和色调取结果
  • screen:重叠区域像素取反色,再取乘积,再取反色
  • subtract:取相减结果
  • softLight:source中的像素会根据fore中得值稍微变亮或者变暗




QT 5.12 QML Graphical Effect 1.12 文档(1.Blend)相关推荐

  1. OGG(ORACLE GOLDENGATE 12.3)安装与学习文档教程

    官方文档连接 OGG微服务安装与使用教程 一.前置环境 1.1 设置数据库归档模式 SQL> alter database archivelog; alter database archivel ...

  2. 极客日报:iPhone 13系列新增苍岭绿:7999元起;腾讯文档崩了;Android 12L命名为Android 12.1|极客头条

    「极客头条」-- 技术人员的新闻圈! CSDN 的读者朋友们早上好哇,「极客头条」来啦,快来看今天都有哪些值得我们技术人关注的重要新闻吧. 整理 | 梦依丹 出品 | CSDN(ID:CSDNnews ...

  3. Qt 读取XML文档的简单示例

    目录名字 XML简介 Qt 操作XML文档一般方法 使用DOM读取XML文档 示例代码:读取XML文档 XML简介 XML(Extensible Markup Language,可扩展标记语言)是一种 ...

  4. Qt帮助文档使用方法

    Qt 帮助文档非常细致而全面,应有尽有,是非常不错的自学教材.因为 Qt 帮助文档太多,所以难以都翻译成中文,即使翻译了一部分,翻译花的时间太多,翻译更新的时效性也难以保证,所以还是得看英文帮助为主. ...

  5. Qt5.12 QML——TextMetrics字体长度的测量指标

    序言 用QML做一个按钮时,有需求是要求只有底下一横,但是不能靠太近,而且长度要刚刚好和字的长度一致,正当我查也查不出来时,被某群的群友启发,知道有一个TextMetrics可以提供相应字体的长度,但 ...

  6. python qt信号在qml 的使用_Python和C++混合使用QML开发GUI

    pyqt和qml结合的中文资很少,在baidu上搜索,基本上就是浪费时间.在国外的blog上,有零星的几篇,但是介绍好的少.在stackoverflow上看到一篇关于pyside,发现pyside,发 ...

  7. Qt Quick编程——QML的核心部分ECMAScript

    说道QML,不得不先说一下ECMAScript: ECMAScript语言的标准是由Netscape.Sun.微软.Borland等公司基于JavaScript和JScript锤炼.定义出来的. EC ...

  8. python qt信号在qml 的使用_QML使用Python的函数过程解析

    有2种方法: 一. QML中定义一个信号,连接Python里的函数: 这里的函数不用特意指明为槽函数,普通函数即可. QML的信号连接Python的函数 QML: 首先在QML中定义一个信号,这里的信 ...

  9. 苹果12系统升级无服务器,iOS 12.1.4验证现已关闭 你还没升到12.2吗?

    原标题:iOS 12.1.4验证现已关闭 你还没升到12.2吗? iOS 12.2 正式版推送后不久,苹果于本周五凌晨关闭 iOS 12.1.4 验证通道,以确保 iPhone.iPad 和 iPod ...

最新文章

  1. 如何获取Node.js目录中存在的所有文件的名称列表?
  2. UVa1491 - Compress the String(dfs)
  3. 2020年高等数学方法与提高(上海理工大学)学习笔记:常微分方程
  4. UILabel 高度的自适应与获取
  5. JavaIO4--ObjectInputStream和ObjectOutputStream
  6. JAVA多线程和并发面试问题
  7. 《Python程序设计》实验指导书(30个实验)
  8. 2018微博词云项目深度解析
  9. Git21天打卡day14-查看文件改动内容git diff
  10. 春季养生男性常搓九部位补肾又健脑
  11. 现代语音信号处理之线性预测分析
  12. Java游戏实验报告_java俄罗斯方块游戏实验报告.doc
  13. 惠普WIN10系统突然桌面和状态栏图标狂闪解决办法
  14. mysql where in_mysql where in 用法举例
  15. 虚幻4引擎2d游戏基础
  16. poj求排列的逆序数
  17. 【3D打印机】3D打印小妙招之“缩短等待打印时间” :在打印开始时同时加热喷嘴和热床。
  18. Android6.0修改以太网IP
  19. 前端转换图片格式 前端将png格式图片转成jpg格式 前端用使用canvas转换图片格式
  20. 台式机计算机图标不见了,台式机电脑输入法不见了怎么调出来

热门文章

  1. 计算机与现代数学论文2000字论文,现代数学论文10篇_发表之家
  2. “新.发.地”——北京的菜篮子有多大?
  3. 【0元试用微软 Azure人工智能认知服务】我做了个群聊天机器人
  4. 2016 年关于JavaScript的技术栈展望_0
  5. 【数字图像处理】图像内插“双三次内插法 双三次插值 Bicubic interpolation”(cv2.resize、cv.INTER_CUBIC)
  6. 转 OGG add trandata 到底做了什么
  7. java 导出excel 列头,java 生成excel (多级表头)导出
  8. html如何插入视频qsv,爱奇艺视频qsv怎么转换成mp4?
  9. 色彩,饱和度,强度和对比度(HSIC)
  10. wifi 荣耀手机usb_华为/荣耀路由器接了USB3.0存储设备后为什么2.4G的WiFi网速变慢了?...