# SVGTextContentElement

The `SVGTextContentElement` interface is implemented by elements that support rendering child text content. It is inherited by various text-related interfaces, such as `SVGTextElement`, `SVGTSpanElement`, `SVGTRefElement`, `SVGAltGlyphElement` and `SVGTextPathElement`.

## Constants

 Constant Value Description LENGTHADJUST_UNKNOWN 0 Some other value. LENGTHADJUST_SPACING 1 The `spacing` keyword. LENGTHADJUST_SPACINGANDGLYPHS 2 The `spacingAndGlyphs` keyword.

## Properties

This interface also inherits properties from its parent, `SVGGraphicsElement`.

`SVGTextContentElement.textLength` Read only
An `SVGAnimatedLength` reflecting the `textLength` attribute of the given element.
`SVGTextContentElement.lengthAdjust` Read only
An `SVGAnimatedEnumeration` reflecting the `lengthAdjust` attribute of the given element. The numeric type values represent one of the constant values above.

## Methods

This interface also inherits methods from its parent, `SVGGraphicsElement`.

`SVGTextContentElement.getNumberOfChars()`
Returns a long representing the total number of addressable characters available for rendering within the current element, regardless of whether they will be rendered.
`SVGTextContentElement.getComputedTextLength()`
Returns a float representing the computed length for the text within the element.
`SVGTextContentElement.getSubStringLength()`
Returns a float representing the computed length of the formatted text advance distance for a substring of text within the element. Note that this method only accounts for the widths of the glyphs in the substring and any extra spacing inserted by the CSS 'letter-spacing' and 'word-spacing' properties. Visual spacing adjustments made by the 'x' attribute is ignored.
`SVGTextContentElement.getStartPositionOfChar()`
Returns a `DOMPoint` representing the position of a typographic character after text layout has been performed.

Note: In SVG 1.1 this method returned an `SVGPoint`.

`SVGTextContentElement.getEndPositionOfChar()`
Returns a `DOMPoint` representing the trailing position of a typographic character after text layout has been performed.

Note: In SVG 1.1 this method returned an `SVGPoint`.

`SVGTextContentElement.getExtentOfChar()`
Returns a `DOMRect` representing the computed tight bounding box of the glyph cell that corresponds to a given typographic character.
`SVGTextContentElement.getRotationOfChar()`
Returns a float representing the rotation of typographic character.
`SVGTextContentElement.getCharNumAtPosition()`
Returns a long representing the character which caused a text glyph to be rendered at a given position in the coordinate system. Because the relationship between characters and glyphs is not one-to-one, only the first character of the relevant typographic character is returned
`SVGTextContentElement.selectSubString()`
Selects text within the element.

## Specifications

Specification Status Comment
Scalable Vector Graphics (SVG) 2
The definition of 'SVGTextContentElement' in that specification.
Candidate Recommendation Changed inheritance from `SVGElement` to `SVGGraphicsElement` and `getStartPositionOfChar()` and removed implementations of `SVGTests`, `SVGLangSpace`, `SVGExternalResourcesRequired`, `SVGStylable` interfaces and `getEndPositionOfChar()` to return a `DOMPoint` instead of an `SVGPoint`.
Scalable Vector Graphics (SVG) 1.1 (Second Edition)
The definition of 'SVGTextContentElement' in that specification.
Recommendation Initial definition

## Browser compatibility

FeatureChromeEdgeFirefoxInternet ExplorerOperaSafari
Basic support Yes12 Yes Yes Yes ?
`lengthAdjust` ? ? ? ? ? ?
`textLength` ? ? ? ? ? ?
`getCharNumAtPosition` ? ? ? ? ? ?
`getComputedTextLength` ? ? ? ? ? ?
`getEndPositionOfChar` ? ? ? ? ? ?
`getExtentOfChar` ? ? ? ? ? ?
`getNumberOfChars` ? ? ? ? ? ?
`getRotationOfChar` ? ? ? ? ? ?
`getStartPositionOfChar` ? ? ? ? ? ?
`getSubStringLength` ? ? ? ? ? ?
`selectSubString` ? ? ? ? ? ?
FeatureAndroid webviewChrome for AndroidEdge mobileFirefox for AndroidOpera AndroidiOS SafariSamsung Internet
Basic support Yes Yes12 Yes Yes ? ?
`lengthAdjust` ? ? ? ? ? ? ?
`textLength` ? ? ? ? ? ? ?
`getCharNumAtPosition` ? ? ? ? ? ? ?
`getComputedTextLength` ? ? ? ? ? ? ?
`getEndPositionOfChar` ? ? ? ? ? ? ?
`getExtentOfChar` ? ? ? ? ? ? ?
`getNumberOfChars` ? ? ? ? ? ? ?
`getRotationOfChar` ? ? ? ? ? ? ?
`getStartPositionOfChar` ? ? ? ? ? ? ?
`getSubStringLength` ? ? ? ? ? ? ?
`selectSubString` ? ? ? ? ? ? ?

## Document Tags and Contributors

Tags:
Contributors to this page: fscholz, Jonathan_Watt, Sebastianz
Last updated by: fscholz,