MaskedBlur QML 类型
应用具有可变强度的模糊效果。更多...
导入语句 | import Qt5Compat.GraphicalEffects |
自从 | QtGraphicalEffects 1.0 |
继承 |
属性
- cached : alias
- maskSource : alias
- radius : alias
- samples : alias
- source : alias
详细信息
MaskedBlur 效果通过模糊图像来软化图像。可以使用 maskSource 控制每个像素的模糊强度,使源的一部分比其他部分更模糊。
执行实时模糊是一个非常耗费资源的操作。即使是在高端图形硬件上,带有足够样例的全屏高斯模糊也只能以 60 fps 的速度运行。
来源 | MaskSource | 应用的效果 |
---|---|---|
注意:此效果在使用 OpenGL 运行时可用。
示例
以下示例演示了如何应用此效果。
import QtQuick import Qt5Compat.GraphicalEffects Item { width: 300 height: 300 Image { id: bug source: "images/bug.jpg" sourceSize: Qt.size(parent.width, parent.height) smooth: true visible: false } LinearGradient { id: mask anchors.fill: bug gradient: Gradient { GradientStop { position: 0.2; color: "#ffffffff" } GradientStop { position: 0.5; color: "#00ffffff" } } start: Qt.point(0, 0) end: Qt.point(300, 0) visible: false } MaskedBlur { anchors.fill: bug source: bug maskSource: mask radius: 16 samples: 24 } }
属性文档
cached : alias |
该属性允许将效果输出像素缓存起来以改善渲染性能。每次更改源或效果属性时,缓存中的像素都必须更新。由于需要额外的内存缓冲区来存储效果输出,内存消耗会增加。
建议在动画化源或效果属性时禁用缓存。
默认情况下,属性设置为 false
。
maskSource : alias |
该属性定义控制模糊最终强度的项目。从 maskSource 中像素的 alpha 通道值定义用于模糊相应源像素的实际模糊半径。
不透明的 maskSource 像素会产生指定 radius 的模糊,而透明像素将完全抑制模糊。半透明 maskSource 像素会产生一个根据像素透明度级别插值后的半径进行模糊。
radius : alias |
样本数 : 别名 |
该属性定义了在执行模糊计算时每像素要取多少样本。更大的值产生更好的质量,但渲染速度较慢。
理想情况下,该值应该是所需最高半径值的两倍加1,例如,如果半径在0.0和4.0之间动画化,样本数应设置为9。
默认情况下,该属性设置为9
。
该属性不应用于动画。更改此属性可能会重新编译底层的OpenGL着色器。
源 : 别名 |
该属性定义了将要进行模糊处理的目标项。
注意:不支持让效果包含自身,例如通过将源设置为效果的父项。
© 2024 The Qt Company Ltd. 本文档中的文档贡献属于其各自的业主。本处提供的文档是根据由自由软件基金会发布的GNU自由文档许可版本1.3的条款许可的。Qt及其相应的标志是The Qt Company Ltd.在芬兰和/或其他国家/地区的商标。所有其他商标均为其各自业主的财产。