乐闻世界logo
搜索文章和话题

How to Center Text inside an SVG Path

1个答案

1

To center text on a path in SVG, the primary steps involve creating the path, defining the text, and using the textPath element to link the text to the path. Here are the specific steps and code examples:

Step 1: Create the Path First, define a path (path) on which the text will be displayed. This path can be a straight line, curve, or any custom shape.

Step 2: Define the Text Define a text element, which serves as the container for the actual text content.

Step 3: Use the textPath Element to Link Text and Path The textPath element is used to associate the text with the defined path. By setting the href attribute of textPath to the path's ID, the text is laid out along that path. To center the text, set the startOffset attribute of the textPath element to 50% and ensure text-anchor is set to middle.

Here is a specific code example demonstrating centered text along a circular path:

xml
<svg width="200" height="200" xmlns="http://www.w3.org/2000/svg"> <!-- Define a circular path --> <path id="circlePath" fill="none" stroke="red" d="M 100, 100 m -75, 0 a 75,75 0 1,0 150,0 a 75,75 0 1,0 -150,0"/> <!-- Text element --> <text fill="blue" font-size="20" text-anchor="middle"> <!-- Link text to path --> <textPath href="#circlePath" startOffset="50%"> Centered text along path </textPath> </text> </svg>

In this example, id="circlePath" defines a circular path. The text element contains a textPath that links to the defined circular path via href="#circlePath". Setting startOffset="50%" and text-anchor="middle" ensures the text is centered on the circular path.

This approach allows text to be centered along the path, which is particularly useful for creating SVG graphics and animations, especially when the path shape is irregular.

2024年7月20日 03:39 回复

你的答案