QML类型说明-LevelAdjust

LevelAdjust

ImportStatement:   import QtGraphicalEffects 1.0

Since:  QtGraphicalEffects 1.0

Inherits:      Item

 

Properties

cached :bool

gamma :variant

maximumInput: color

maximumOutput: color

minimumInput: color

minimumOutput: color

source :variant

 

DetailedDescription

这个影响调节源组件的每个色彩通道。源组件的对比度能被调节,色彩平衡能被改变。

效果

 

示例代码:

importQtQuick 2.0

importQtGraphicalEffects 1.0

 

Item {

    width: 300

    height: 300

 

    Image {

        id: butterfly

        source:"images/butterfly.png"

        sourceSize: Qt.size(parent.width,parent.height)

        smooth: true

        visible: false

    }

 

    LevelAdjust {

        anchors.fill: butterfly

        source: butterfly

        minimumOutput: "#00ffffff"

        maximumOutput: "#ff000000"

    }

}

 

PropertyDocumentation

cached :bool

是否缓冲影响输出,提高渲染性能但消耗更多内存。每当源或影响属性发生变化,缓冲都会更新。当源或影响属性为动画时,推荐关闭缓冲。默认为假。

 

gamma : variant

根据方程,每个像素色彩通道的值的变化因子。方程为:result.rgb = pow(original.rgb, 1.0 /gamma.rgb);设置gamma值在QtVector3d(1.0, 1.0, 1.0)之下使图片变暗,在QtVector3d(1.0,1.0, 1.0)之上使图片变亮。值在QtVector3d(0.0, 0.0, 0.0)(最暗)到inf(最亮)。默认为QtVector3d(1.0, 1.0, 1.0)(不变)。

Gamma的影响    

gamma: Qt.vector3d(1.0, 1.0, 1.0) gamma: Qt.vector3d(1.0, 0.4, 2.0) gamma: Qt.vector3d(1.0, 0.1, 4.0)
minimumInput: #000000 minimumInput: #000000 minimumInput: #000000
maximumInput: #ffffff maximumInput: #ffffff maximumInput: #ffffff
minimumOutput: #000000 minimumOutput: #000000 minimumOutput: #000000
maximumOutput: #ffffff maximumOutput: #ffffff maximumOutput: #ffffff

像素颜色通道的亮度曲线    

X-axis: 像素原始亮度    
Y-axis: 被影响的色彩通道亮度


maximumInput: color

每个色彩通道的最大输入值。它设置白点。每个色彩通道所有比设置值高的色彩,都被改变成白色。减少它使亮的区域更亮。

值的范围是"#ffffff"到"000000"。默认时,这个属性被设置成"#ffffffff"(不改变)。

注意:前2个ff是红色通道,接着2个ff是绿色通道,最后2个ff是蓝色通道。每个通道单独作用于相应的颜色。另外,示例的图片,译者认为有问题,作了修正,但不保证正确。读者具体使用时,根据试验结果确认影响。当前,译者也会在后期的试验中,进一步修正本文档。

maximumInput的影响    

maximumInput: #FFFFFFFF maximumInput: #FFFFFF80 maximumInput: #FFFFFF30
minimumInput: #000000 minimumInput: #000000 minimumInput: #000000
minimumOutput: #000000 minimumOutput: #000000 minimumOutput: #000000
maximumOutput: #ffffff maximumOutput: #ffffff maximumOutput: #ffffff
gamma: Qt.vector3d(1.0, 1.0, 1.0) gamma: Qt.vector3d(1.0, 1.0, 1.0) gamma: Qt.vector3d(1.0, 1.0, 1.0)

像素颜色通道的亮度曲线    

X-axis: 像素原始亮度    
Y-axis: 被影响的色彩通道亮度


maximumOutput: color

每个色彩通道输出最大值。减少这个值使亮的区域变暗,降低对比度。

maximumOutput的影响    

maximumOutput: #FFFFFFFF maximumOutput: #FFFFFF80 maximumOutput: #FFFFFF30
minimumInput: #000000 minimumInput: #000000 minimumInput: #000000
maximumInput: #ffffff maximumInput: #ffffff maximumInput: #ffffff
minimumOutput: #000000 minimumOutput: #000000 minimumOutput: #000000
gamma: Qt.vector3d(1.0, 1.0, 1.0) gamma: Qt.vector3d(1.0, 1.0, 1.0) gamma: Qt.vector3d(1.0, 1.0, 1.0)

像素颜色通道的亮度曲线    

X-axis: 像素原始亮度    
Y-axis: 被影响的色彩通道亮度

minimumInput: color

每个像素通道输入最小值。它设置黑点。所以比该值低的输入,都渲染成黑色(每色彩通道)。提高这个值让暗区更暗。

值在"#000000"到"#ffffff"之间,默认为"#000000"(不变)。

minimumInput的影响    

minimumInput: #00000000 minimumInput: #00000040 minimumInput: #00000070
maximumInput: #ffffff maximumInput: #ffffff maximumInput: #ffffff
minimumOutput: #000000 minimumOutput: #000000 minimumOutput: #000000
maximumOutput: #ffffff maximumOutput: #ffffff maximumOutput: #ffffff
gamma: Qt.vector3d(1.0, 1.0, 1.0) gamma: Qt.vector3d(1.0, 1.0, 1.0) gamma: Qt.vector3d(1.0, 1.0, 1.0)

像素颜色通道的亮度曲线    

X-axis: 像素原始亮度    
Y-axis: 被影响的色彩通道亮度


minimumOutput: color

每个色彩通道的最小输出。增加这个值让暗区更亮,减少对比度。

minimumOutput的影响    

minimumOutput: #00000000 minimumOutput: #00000070 minimumOutput: #000000A0
minimumInput: #000000 minimumInput: #000000 minimumInput: #000000
maximumInput: #ffffff maximumInput: #ffffff maximumInput: #ffffff
maximumOutput: #ffffff maximumOutput: #ffffff maximumOutput: #ffffff
gamma: Qt.vector3d(1.0, 1.0, 1.0) gamma: Qt.vector3d(1.0, 1.0, 1.0) gamma: Qt.vector3d(1.0, 1.0, 1.0)

像素颜色通道的亮度曲线    

X-axis: 像素原始亮度    
Y-axis: 被影响的色彩通道亮度


source :variant

用来影响的源。注意它不支持影响自身,所以不能设置父到source上。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值