Самый простой способ печати массива - использовать for-loop:
// initialize array
for(int i=0;i<array.length;i++)
{
System.out.print(array[i] + " ");
}
Вам нужно увеличить размер области фильтра.
<filter id="SVGID_0" y="-40%" height="180%">
работает просто отлично. Тихие значения по умолчанию для области фильтра: x = "- 10%" y = "- 10%" width = "120%" height = "120%" - большие размытия обычно обрезаются. (Ваша тень не обрезается горизонтально, потому что ваша ширина составляет около 2,5x от вашей высоты - так что 10% приводит к более широкой области горизонтального фильтра). Кроме того, область y-фильтра, по-видимому, вычисляется так, как если бы путь имел ход с нулевым пикселем, поэтому он игнорирует ширину штриха. (Различные браузеры имеют разное поведение по отношению к тому, считают ли они, что удар является частью ограничительной рамки для расчета области фильтра.)
(Обновление: перемещение наблюдений из комментариев). Обратите внимание, что если ваша конкретная форма (например, горизонтальная или вертикальная линия), то вы должны указать filterUnits="userSpaceOnUse"
как часть объявления фильтра и явно указать область фильтра (x, y, width height) в userSpaceUnits (обычно пикселей), что создает достаточное пространство для отображения тени.
Если вы используете его внутри HTML, вы можете просто использовать свойства CSS, чтобы исправить эту проблему.
svg {
overflow: visible !important;
}
Я не проверял другие браузеры, но хром имеет overflow: hidden
на default по svg-тегам.
Немного поздно, но я надеюсь, что это будет полезно.
Как указано в комментарии выше, исправление для меня состояло в том, чтобы добавить атрибут к теневому тэгу svg filter
.
filterUnits="userSpaceOnUse"
Конечный вывод:
<filter id="dropshadow" height="130%" width="130%" filterUnits="userSpaceOnUse">
Это делает тень абсолютно позиционированной и видимой вне ее контейнера.