<textPath>
Базовая поддержка Широко доступно *
Эта функция хорошо зарекомендовала себя и работает на многих устройствах и в разных версиях браузеров. Она доступна во всех браузерах с июля 2015 года.
* Некоторые части этой функции могут поддерживаться в разной степени.
Элемент <textPath> SVG используется для отображения текста вдоль формы элемента <path>. Текст должен быть заключён в элемент <textPath>, а его атрибут href используется для ссылки на нужный <path>.
Контекст использования
Атрибуты
href-
URL пути или базовой фигуры, вдоль которой будет отображаться текст. Если задан атрибут
path,hrefне действует. Тип значения: <URL>; Значение по умолчанию: отсутствует; Анимируемый: да lengthAdjust-
Где следует корректировать длину текста: в интервалах между глифами или как в интервалах, так и в самих глифах. Тип значения:
spacing|spacingAndGlyphs; Значение по умолчанию:spacing; Анимируемый: да method-
Метод отображения отдельных глифов вдоль пути. Тип значения:
align|stretch; Значение по умолчанию:align; Анимируемый: да -
pathЭкспериментальная функция -
Путь, вдоль которого должен отображаться текст. Тип значения: <path_data>; Значение по умолчанию: отсутствует; Анимируемый: да
-
sideЭкспериментальная функция -
Сторона пути, с которой должен отображаться текст. Тип значения:
left|right; Значение по умолчанию:left; Анимируемый: да spacing-
Способ обработки интервалов между глифами. Тип значения:
auto|exact; Значение по умолчанию:exact; Анимируемый: да startOffset-
Смещение начала текста относительно начала пути. Тип значения: <length> | <percentage> | <number>; Значение по умолчанию:
0; Анимируемый: да textLength-
Ширина области, в которой будет отображаться текст. Тип значения: <length> | <percentage> | <number>; Значение по умолчанию: auto; Анимируемый: да
Интерфейс DOM
Этот элемент реализует интерфейс SVGTextPathElement.
Пример
<svg viewBox="0 0 100 100" xmlns="http://www.w3.org/2000/svg">
<!-- to hide the path, it is usually wrapped in a <defs> element -->
<!-- <defs> -->
<path
id="MyPath"
fill="none"
stroke="red"
d="M10,90 Q90,90 90,45 Q90,10 50,10 Q10,10 10,40 Q10,70 45,70 Q70,70 75,50" />
<!-- </defs> -->
<text>
<textPath href="#MyPath">Quick brown fox jumps over the lazy dog.</textPath>
</text>
</svg>
Спецификации
Совместимость с браузерами
| Настольные | Мобильные | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome для Android | Firefox для Android | Opera для Android | Safari для iOS | Samsung Internet | WebView для Android | WebView для iOS | |
textPath |
1 | 12 | 2 | 15 | 3.1До Safari 6 textPath не перерисовывался при динамическом изменении пути, на который он ссылался (см. ошибку 15799) |
18 | 4 | 14 | 2До Safari для iOS 6 textPath не перерисовывался при динамическом изменении пути, на который он ссылался (см. ошибку 15799) |
1.0 | 4.4 | 2До WebView для iOS 6 textPath не перерисовывался при динамическом изменении пути, на который он ссылался (см. ошибку 15799) |
fill |
1 | 79 | 2 | 15 | 3.1 | 18 | 4 | 14 | 2 | 1.0 | 4.4 | 2 |
href |
50Принимаются ссылки только на элементы path. Базовые фигуры (rect, circle, ellipse, line, polygon, polyline) не поддерживаются. |
12 | 2 | 37Принимаются ссылки только на элементы path. Базовые фигуры (rect, circle, ellipse, line, polygon, polyline) не поддерживаются. |
12.1Принимаются ссылки только на элементы path. Базовые фигуры (rect, circle, ellipse, line, polygon, polyline) не поддерживаются. |
50Принимаются ссылки только на элементы path. Базовые фигуры (rect, circle, ellipse, line, polygon, polyline) не поддерживаются. |
4 | 37Принимаются ссылки только на элементы path. Базовые фигуры (rect, circle, ellipse, line, polygon, polyline) не поддерживаются. |
12.2Принимаются ссылки только на элементы path. Базовые фигуры (rect, circle, ellipse, line, polygon, polyline) не поддерживаются. |
5.0Принимаются ссылки только на элементы path. Базовые фигуры (rect, circle, ellipse, line, polygon, polyline) не поддерживаются. |
50Принимаются ссылки только на элементы path. Базовые фигуры (rect, circle, ellipse, line, polygon, polyline) не поддерживаются. |
12.2Принимаются ссылки только на элементы path. Базовые фигуры (rect, circle, ellipse, line, polygon, polyline) не поддерживаются. |
path |
Нет | Нет | 61 | Нет | Нет | Нет | 61 | Нет | Нет | Нет | Нет | Нет |
side |
Нет | Нет | 61 | Нет | Нет | Нет | 61 | Нет | Нет | Нет | Нет | Нет |
spacing |
1 | 79 | 20 | 15 | 3.1 | 18 | 20 | 14 | 2 | 1.0 | 4.4 | 2 |
startOffset |
1 | 12 | 20 | 15 | 3.1 | 18 | 20 | 14 | 2 | 1.0 | 4.4 | 2 |
systemLanguage |
1 | 12 | 12 | 15 | 3.1 | 18 | 14 | 14 | 2 | 1.0 | 4.4 | 2 |
textLength |
1 | 12 | 2 | 15 | 3.1 | 18 | 4 | 14 | 2 | 1.0 | 4.4 | 2 |
xlink_href |
1 | 12 | 2 | 15 | 3.1 | 18 | 4 | 14 | 2 | 1.0 | 4.4 | 2 |
© 2005–2025 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/SVG/Reference/Element/textPath