JavaFX Dropshadow CSS: что означают параметры?Как реализовать ширину и высоту в CSS? - PullRequest
0 голосов
/ 23 февраля 2019

Я искал это по всему Интернету, но на большинство вопросов, на которые я смотрел и которые отвечали в CSS, люди просто давали код, не объясняя их.

-fx-effect: dropshadow(gaussian, rgba(0, 0, 0, 0.3), 10, 0.5, 0.0, 0.0);

Для этой строки кода для реализации тени в CSS, что означают переменные?

Из того, что я понял, это означает:

-fx-effect: dropshadow(blurType, color, radius, spread, offsetX, offsetY)

Нов фактическом теге эффекта DropShadow в FXML вместо 4 есть 6 числовых переменных.

<DropShadow blurType="GAUSSIAN" color="#ee8c9e8f" height="151.47" offsetX="3.0" offsetY="3.0" radius="73.75" spread="0.5" width="145.53" />

Как реализовать этот эффект с 8 параметрами в CSS?

1 Ответ

0 голосов
/ 23 февраля 2019

Вот что говорится в документации Справочное руководство по JavaFX CSS :

<effect>

JavaFX CSS в настоящее время поддерживает DropShadow и InnerShadow эффекты от платформы JavaFX.См. Документацию класса в javafx.scene.effect для получения дополнительной информации о семантике различных параметров эффекта.

Drop Shadow

Эффект высокого уровня, который создает теньзаданный контент за контентом.

dropshadow( <blur-type> , <color> , <number> , <number> , <number> , <number> )

<blur-type> = [ gaussian | one-pass-box | three-pass-box | two-pass-box ]
<color> Цвет тени.
<number> Радиус ядра размытия тени.В диапазоне [0.0 ... 127.0], типичное значение 10.
<number> Распространение тени.Разброс - это часть радиуса, где вклад исходного материала будет 100%.Оставшаяся часть радиуса будет иметь вклад, контролируемый ядром размытия.Разброс 0.0 приведет к распределению тени, полностью определяемому алгоритмом размытия.Разброс 1.0 приведет к значительному росту непрозрачности исходного материала до предела радиуса с очень резким обрезанием прозрачности на радиусе.Значения должны находиться в диапазоне [0.0 ... 1.0].
<number> Смещение тени в направлении x в пикселях.
<number> Смещение тени в направлении y в пикселях.

Внутренняя тень

Эффект высокого уровня, который визуализирует тень внутри границ данного содержимого.

innershadow( <blur-type> , <color> , <number> , <number> , <number> , <number> )

<blur-type> = [ gaussian | one-pass-box | three-pass-box | two-pass-box ]
<color> Цвет тени.
<number> Радиус ядра размытия тени.В диапазоне [0.0 ... 127.0], типичное значение 10.
<number> Дроссель тени.Дроссель - это часть радиуса, где вклад исходного материала будет 100%.Оставшаяся часть радиуса будет иметь вклад, контролируемый ядром размытия.Дроссель 0.0 приведет к распределению тени, полностью определяемой алгоритмом размытия.Дроссель 1.0 приведет к сплошному росту внутрь тени от краев до границы радиуса с очень резким обрезанием прозрачности внутри радиуса.Значения должны быть в диапазоне [0.0 ... 1.0].
<number> Смещение тени в направлении x в пикселях.
<number> Смещение тени в направлении y в пикселях.

Исходя из этого, кажется, что вы не можете указать все 9 свойств из CSS.В частности, вы не можете установить width, height или input из CSS.Но если вы посмотрите документацию DropShadow.radius или InnerShadow.radius, вы увидите что-то вроде:

Радиус ядра размытия тени,Этот атрибут контролирует расстояние, на которое тень распространяется на каждую сторону исходных пикселей.Установка радиуса эквивалентна установке для атрибутов width и height значения (2 * radius + 1).

Так что, если выглядит как установка radius, также устанавливаются width иheight, вы просто не можете давать разные значения для width и height через CSS.

...