QML類型說明-InnerShadow

InnerShadow

ImportStatement:   import QtGraphicalEffects 1.0

Since:  QtGraphicalEffects 1.0

Inherits:      Item

 

Properties

cached :bool

color :color

fast : bool

horizontalOffset: real

radius : real

samples :int

source :variant

spread :real

verticalOffset: real

 

DetailedDescription

默認的影響產生高質量的內部陰影圖片,因此渲染速度可能不是最高的。陰影邊緣軟化越強烈,渲染速度降低的越大。對於要求快速渲染,而不需要最高質量的視覺效果,設置fast屬性爲真。

影響


實例代碼:

importQtQuick 2.0

importQtGraphicalEffects 1.0

 

Item {

    width: 300

    height: 300

 

    Rectangle {

        anchors.fill: parent

    }

 

    Image {

        id: butterfly

        source:"images/butterfly.png"

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

        smooth: true

        visible: false

    }

 

    InnerShadow {

        anchors.fill: butterfly

        radius: 8.0

        samples: 16

        horizontalOffset: -3

        verticalOffset: 3

        color: "#b0000000"

        source: butterfly

    }

}

 

PropertyDocumentation

cached :bool

是否緩衝影響輸出。緩衝會消耗更多內存。如果源或影響屬性發生變化,緩衝也會更新。如果源霍影響屬性是動畫,推薦關閉緩衝。默認爲假。

 

color :color

用作陰影的RGBA色彩。默認爲"black"。

色彩的影響    

color: #000000 color: #ffffff color: #ff0000
radius: 16 radius: 16 radius: 16
samples: 24 samples: 24 samples: 24
horizontalOffset: 0 horizontalOffset: 0 horizontalOffset: 0
verticalOffset: 0 verticalOffset: 0 verticalOffset: 0
spread: 0.2 spread: 0.2 spread: 0.2

fast : bool

用於產生影響軟化的模糊算法。設置爲真打開快速算法,設置爲加產生高質量的結果。默認爲假。

Fast的影響    

fast: false fast: true
radius: 16 radius: 16
samples: 24 samples: 24
color: #000000 color: #000000
horizontalOffset: 0 horizontalOffset: 0
verticalOffset: 0 verticalOffset: 0
spread: 0.2 spread: 0.2

horizontalOffset: real

horizontalOffset和verticalOffset設置內部陰影的偏移位置。通常DropShadow的組件實例被錨定到源元件。所以它在源元件的位置上填充。當horizontalOffset和verticalOffset被設置成0,陰影將渲染在源圖片的下面,改變horizontalOffset和verticalOffset的值可以讓陰影處於源組件實例的相對位置。值在-inf到inf之間。默認爲0。

水平偏移的影響    

horizontalOffset: -20 horizontalOffset: 0 horizontalOffset: 20
radius: 16 radius: 16 radius: 16
samples: 24 samples: 24 samples: 24
color: #000000 color: #000000 color: #000000
verticalOffset: 0 verticalOffset: 0 verticalOffset: 0
spread: 0 spread: 0 spread: 0


radius :real

半徑定義了內部陰影的軟化。巨大的半徑讓陰影顯得更模糊。根據半徑值設置足夠的樣品,才能保能視覺質量。值爲0.0(無模糊)到inf。默認爲0。

半徑的影響    

radius: 0 radius: 6 radius: 12
samples: 24 samples: 24 samples: 24
color: #000000 color: #000000 color: #000000
horizontalOffset: 0 horizontalOffset: 0 horizontalOffset: 0
verticalOffset: 0 verticalOffset: 0 verticalOffset: 0
spread: 0 spread: 0 spread: 0

 

samples :int

當計算陰影邊緣軟化值是,每個像素取多少個樣品。越大的值表示越好的視覺質量,但渲染得更慢。推薦它的值爲最大半徑值得兩倍。例如,如果半徑爲0~4之間變化,樣品值取8。樣品值在0到32之間,默認爲0。

這個屬性沒有計劃被動畫化。改變這個屬性將促使OpenGL着色器被重新編譯。當fast屬性設置爲真,這個屬性不產生影響。

 

source :variant

用來產生內部陰影的源的組件實例。它不支持影響本身,所以不能設置父到source上。

 

spread :real

在源邊緣附近多大尺寸的陰影顏色被強化。值在0.0到1.0之間,默認爲0.5。

Spread的影響    

spread: 0.0 spread: 0.3 spread: 0.5
radius: 16 radius: 16 radius: 16
samples: 24 samples: 24 samples: 24
color: #000000 color: #000000 color: #000000
horizontalOffset: 0 horizontalOffset: 0 horizontalOffset: 0
verticalOffset: 0 verticalOffset: 0 verticalOffset: 0

verticalOffset: real

horizontalOffset和verticalOffset設置陰影的偏移位置。通常DropShadow的組件實例被錨定到源元件。所以它在源元件的位置上填充。當horizontalOffset和verticalOffset被設置成0,陰影將渲染在源圖片的下面,改變horizontalOffset和verticalOffset的值可以讓陰影處於源組件實例的相對位置。值在-inf到inf之間。默認爲0。

英文文檔上的圖表和horizontalOffset是一樣的,這裏就不單獨列出。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章