Мне нужно вывести несколько строк текста в SVG. Для этого я использую следующую схему:
<text>
<tspan> First line </tspan>
<tspan> Second line </tspan>
</text>
Первая и вторая строки текста могут иметь различное количество символов, которые могут изменяться динамически. Я хочу, чтобы вторая строка отображалась в первой строке, а текст в обоих из них был центрирован.
Я могу сделать вторую строку ниже первой строки, добавив dy="15"
для второго <tspan>
.
Я могу выровнять текст в каждом отдельном <tspan>
, добавив text-anchor="middle"
к нему.
Но как сделать относительное центрическое выравнивание этих <tspan>
's?
Я попытался использовать x="0"
для каждого <tspan>
, но, по-видимому, он не работает, поскольку каждая <tspan>
имеет разную ширину, а визуализированный текст в более короткой строке сдвинут влево.
Есть ли способ выравнивания центров 2 <tspan>
различной ширины, используя только CSS и/или SVG.