<textPath>

Baseline 廣泛可用 *

此特性已相當成熟,可在許多裝置和瀏覽器版本上使用。自 ⁨2015 年 7 月⁩以來,各瀏覽器均已提供此特性。

* 此特性的某些部分可能存在不同級別的支援。

<textPath> SVG 元素用於沿 <path> 元素的形狀渲染文字。文字必須包含在 <textPath> 元素內,並且其 href 屬性用於引用所需的 <path>

使用語境

分類文字內容元素,文字內容子元素
允許內容字元資料以及任意數量的以下元素,順序任意
描述性元素
<a><animate><discard><set><tspan>

屬性

href

用於渲染文字的路徑或基本形狀的 URL。如果設定了 path 屬性,href 將不起作用。值型別<URL>預設值:無;可動畫

長度調整

在文字上應用長度調整的位置:字形之間的間距,或間距和字形本身。值型別spacing | spacingAndGlyphs預設值spacing可動畫

method(方法)

沿路徑渲染單個字形的方法。值型別align | stretch預設值align可動畫

path 實驗性

文字應渲染的路徑。值型別<path_data>預設值:無;可動畫

side 實驗性

文字應渲染在路徑的哪一側。值型別left | right預設值left可動畫

間距

如何處理字形之間的空格。值型別auto | exact預設值exact可動畫

起始偏移

文字開頭距離路徑開頭的偏移量。值型別<length> | <percentage> | <number>預設值0可動畫

文字長度

文字將渲染的空間的寬度。值型別<length> | <percentage> | <number>預設值auto可動畫

DOM 介面

此元素實現了 SVGTextPathElement 介面。

示例

html
<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>

規範

規範
Scalable Vector Graphics (SVG) 2
# TextPathElement

瀏覽器相容性