Как использовать Tref в SVG-файле? - PullRequest
0 голосов
/ 25 сентября 2019

Я пробовал этот код, но «текст, на который следует ссылаться», никогда не отображается на экране, возможно, это потому, что xlink устарел;Вы знаете, как обновить этот код, чтобы он работал?Или какую функцию я должен использовать вместо xlink: href?Заранее большое спасибо :)

 <svg xmlns="http://www.w3.org/2000/svg" version="1.0"
    xmlns:xlink="http://www.w3.org/1999/xlink">
    <defs>
    <text id="Textref">
    The text to be referenced to
    </text>
    </defs>

    <text x="20" y="20" font-size="30" fill="#9d1d20" >
    Inline text
    </text>

    <text x="20" y="40" font-size="30" fill="red" style="text-decoration:underline;">
    <tref xlink:href="#Textref"/>
    </text>
    </svg>

Ответы [ 2 ]

1 голос
/ 25 сентября 2019

tref был удален из SVG 2 , и ни один текущий браузер не поддерживает его.Просто вставьте текст в нужное место.

<svg xmlns="http://www.w3.org/2000/svg" version="1.0"
    xmlns:xlink="http://www.w3.org/1999/xlink" width="100%">
 
    <text x="20" y="20" font-size="30" fill="#9d1d20" >
    Inline text
    </text>

    <text x="20" y="40" font-size="30" fill="red" style="text-decoration:underline;">
    The text to be referenced to
    </text>
    </svg>
1 голос
/ 25 сентября 2019

Ваш браузер может не поддерживать тег tref.Вам понадобится тег use:

<svg width="500" height="500"  xmlns="http://www.w3.org/2000/svg" version="1.0"
    xmlns:xlink="http://www.w3.org/1999/xlink">
    <defs>
    <text id="Textref">
    The text to be referenced to
    </text>
    </defs>

    <text x="20" y="20" font-size="30" fill="#9d1d20" >
    Inline text
    </text>

    <use  x="20" y="40" href="#Textref" font-size="30" fill="red" style="text-decoration:underline;" />
    </svg>
...