最初にそれを定義する必要なしにこの勾配を達成することは可能<defs>
ですか?
デバイス(スイッチ、ルーターなど)間のリンクのネットワーク負荷を示すネットワークマップに取り組んでいます。これはSVGを使用して描画しますが、開始(アップリンク)と終了(ダウンリンク)の色がバックエンドシステムからすでに与えられており、アプリケーションのテンプレート変数からアクセスできるため、すべてのグラデーションを定義したくありません。
何千ものリンク参照を追跡する必要がなく、すべてのグラデーションが「99.9%」になるため、すべてのリンクに適切なグラデーションを指定する必要があるため、コードを賢く実行する方がはるかに簡単なので、インラインスタイルを使用したいと思います。ネットワークマップに描画するすべての線(リンクロード)で一意である時間の
簡単に言えば、私はその線に沿って何かをすることができます <line stroke=<linearGradient...
か?1つを定義し、それを参照する必要はありませんか?CSSのスタイルのように:<span style='color: blue'> .. </span>
<svg width="1024" height="800">
<defs>
<linearGradient id="grad1" x1="0%" y1="0%" x2="0%" y2="100%">
<stop offset="0%" style="stop-color:#000066;stop-opacity:1" />
<stop offset="50%" style="stop-color:#000066;stop-opacity:1" />
<stop offset="51%" style="stop-color:#00ffff;stop-opacity:1" />
<stop offset="100%" style="stop-color:#00ffff;stop-opacity:1" />
</linearGradient>
</defs>
<text x="50" y="50" fill="red">foo bar</text>a
<line stroke="url(#grad1)" x1="130.8757632890282"
y1="163.6818288670081" x2="651.9483366457684" y2="415.704113030817" />
</svg>