2014-12-22 6 views
1

Итак, я хочу создать несколько полилиний, используя путь. Некоторые из этих полилиний, я хочу другого цвета. Есть ли способ изменить цвет в середине пути?SVG: Изменение цвета линии Mid-Path

Я предполагаю, что ответ отрицательный. Мне нужно будет рисовать разные цветные линии, используя другой путь. Просто проверяю, не пропустил ли я что-то.

Спасибо.

+0

Хороший вопрос, но я не думаю, что можно изменить цвет хода/пути на полпути. Это не вариант в Photoshop, Illustrator, InkScape или любом векторном графическом программном обеспечении, которое я знаю; поэтому я действительно сомневаюсь, что это возможно с помощью современных технологий ... – grim

+1

ОК, возможно, я не прояснил ситуацию. Скажем, мой путь привлек 10 полилиний. Я хочу, чтобы один из них выглядел зеленым, а все остальные - черным. Это то, что я имел в виду. Похоже, вы могли подумать, что я хочу, чтобы часть одной строки появлялась в зеленом цвете. – NotoriousWebmaster

+0

Даже если разные части пути отключены, он по-прежнему рассматривается как один элемент в отношении стиля. Если вы хотите, чтобы часть чертежа была оформлена по-разному, вам нужно сделать ее отдельным элементом. (За исключением некоторых ограниченных случаев, когда вы можете создать градиент, который точно соответствует изменениям цвета, которые вы хотите, как предположил Эрик Дальстром). – AmeliaBR

ответ

2

Это зависит от пути, но вы можете сделать это с помощью градиентного штриха в некоторых случаях.

<svg> 
    <defs> 
     <linearGradient id="grad" x1="298" y1="0" x2="304" y2="0" gradientUnits="userSpaceOnUse"> 
      <stop stop-color="black" offset="0"/> 
      <stop stop-color="red" offset="0.01"/> 
      <stop stop-color="red" offset="0.7"/> 
      <stop stop-color="black" offset="0.7"/> 
     </linearGradient> 
    </defs> 
    <polyline points="20 20 300 20 300 100 400 100" stroke="url(#grad)" fill="none" stroke-width="4"/> 
</svg> 

См. fiddle.

+0

Спасибо за ваш ответ Эрик. Я не уверен, что это будет работать для моего приложения, но я буду с ним поиграть. Я думаю, что в конечном итоге мне придется создать отдельный путь для выделенной строки. Но ваш короткий фрагмент показывает мне, что я еще не встречал в своих исследованиях SVG. Так что спасибо за это. – NotoriousWebmaster

Смежные вопросы