GammaAdjust
ImportStatement: import QtGraphicalEffects 1.0
Since: QtGraphicalEffects 1.0
Inherits: Item
Properties
cached :bool
gamma : real
source :variant
DetailedDescription
GammaAdjust应用于每个像素,它使用预定义的曲线作为冥律分布表达式。
源 | 影响 |
---|---|
|
|
实现代码:
importQtQuick 2.0
importQtGraphicalEffects 1.0
Item {
width: 300
height: 300
Image {
id: bug
source: "images/bug.jpg"
sourceSize: Qt.size(parent.width,parent.height)
smooth: true
visible: false
}
GammaAdjust {
anchors.fill: bug
source: bug
gamma: 0.45
}
}
PropertyDocumentation
cached :bool
是否缓冲输出,缓冲提高渲染效率,但消耗更多内存。每当源或影响属性发生变化,缓冲都会更新。当源和影响属性是动画时,推荐关闭缓冲,默认为假。
gamma : real
根据方程,每个像素的亮度变化的变化因子。方程为:
luminance =pow(original_luminance, 1.0 / gamma); // 亮度被假定在0.0和0.1之间
设置gamma值小于1.0使图片变暗,大于1.0,图片变亮。值在0.0(最暗)到inf(最亮)之间,默认为1.0(不改变)
Gamma的影响 | ||
---|---|---|
|
|
|
gamma: 0.5 | gamma: 1.0 | gamma: 2.0 |
图像上的亮度曲线 | ||
---|---|---|
|
|
|
Red curve: default gamma (1.0) | ||
Yellow curve: effect applied | ||
X-axis: pixel original luminance | ||
Y-axis: pixel luminance with effect applied |
source :variant
用来调整亮度的源,它不能影响自身,所以不能设置父到source上。