Тип QML LevelAdjust
Регулирует уровни цвета в цветовом пространстве RGBA. Подробнее...
| Оператор импорта: | import QtGraphicalEffects 1.0 |
| С момента: | QtGraphicalEffects 1.0 |
| Наследует: |
Свойства
- cached : bool
- gamma : variant
- maximumInput : цвет
- maximumOutput : цвет
- minimumInput : цвет
- minimumOutput : цвет
- source : variant
Подробное описание
Этот эффект регулирует цвета элемента-источника по отдельности для каждого цветового канала. Можно настроить контраст элемента-источника и изменить цветовой баланс.
| Источник | Примененный эффект |
|---|---|
Пример
Следующий пример показывает, как применить эффект.
import QtQuick 2.0
import QtGraphicalEffects 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"
}
} Документация по свойствам
cached : bool
Это свойство позволяет кэшировать пиксели выходного изображения эффекта для повышения производительности отрисовки.
Каждый раз при изменении источника или свойств эффекта пиксели в кэше должны быть обновлены. Потребление памяти увеличивается, так как для хранения выходных данных эффекта требуется дополнительный буфер памяти.
Рекомендуется отключить кэш, когда источник или свойства эффекта анимированы.
По умолчанию свойство установлено в false.
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) (самый темный) до бесконечности (самый светлый). По умолчанию свойство установлено в 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: исходная яркость пикселя | ||
| Ось Y: яркость цветового канала с примененным эффектом |
maximumInput : цвет
Это свойство определяет максимальный уровень входного сигнала для каждого цветового канала. Оно устанавливает точку белого цвета, все пиксели со значением выше этого свойства отображаются как белые (по каждому цветовому каналу). Уменьшение значения осветляет светлые области.
Значение колеблется от "#ffffffff" до "#00000000". По умолчанию свойство установлено в "#ffffffff" (без изменений).
| Примеры выходных данных с различными значениями 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: исходная яркость пикселя | ||
| Ось Y: яркость цветового канала с примененным эффектом |
maximumOutput : цвет
Это свойство определяет максимальный уровень выходного сигнала для каждого цветового канала. Уменьшение значения затемняет светлые области, уменьшая контраст.
Значение колеблется от "#ffffffff" до "#00000000". По умолчанию свойство установлено в "#ffffffff" (без изменений).
| Примеры выходных данных с различными значениями 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: исходная яркость пикселя | ||
| Ось Y: яркость цветового канала с примененным эффектом |
minimumInput : color
Это свойство определяет минимальный уровень входного значения для каждого цветового канала. Оно устанавливает черный цвет, все пиксели с значением ниже этого свойства отображаются как черный цвет (по каждому цветовому каналу). Увеличение значения затемняет темные области.
Значение изменяется от "#00000000" до "#ffffffff". По умолчанию свойство установлено в "#00000000" (без изменений).
| Примеры вывода с различными значениями 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: исходная яркость пикселя | ||
| Ось Y: яркость цветового канала с применённым эффектом |
minimumOutput : color
Это свойство определяет минимальный уровень выходного значения для каждого цветового канала. Увеличение значения осветляет темные области, уменьшая контраст.
Значение изменяется от "#00000000" до "#ffffffff". По умолчанию свойство установлено в "#00000000" (без изменений).
| Примеры вывода с различными значениями 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: исходная яркость пикселя | ||
| Ось Y: яркость цветового канала с применённым эффектом |
source : variant
Это свойство определяет элемент источника, который предоставляет пиксели-источники для эффекта.
Примечание: Нельзя позволить эффекту включать себя, например, установив source на родителя эффекта.
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/archives/qt-5.6/qml-qtgraphicaleffects-leveladjust.html