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是一樣的,這裏就不單獨列出。