## org.apache.batik.dom.svg
Interface SVGTextContent

All Known Implementing Classes:
  SVGTextElementBridge, SVGTextElementBridge.AbstractTextChildTextContent

public interface SVGTextContent

This class provides the interface for the SVGTextContentElement for the bridge to implement.

Method Summary
`int` `getCharNumAtPosition(float x, float y)`
`float` `getComputedTextLength()`
`java.awt.geom.Point2D` `getEndPositionOfChar(int charnum)` Returns the current text position after rendering the character in the user coordinate system for rendering the glyph(s) that correspond to the specified character.
`java.awt.geom.Rectangle2D` `getExtentOfChar(int charnum)` Returns a tightest rectangle which defines the minimum and maximum X and Y values in the user coordinate system for rendering the glyph(s) that correspond to the specified character.
`int` `getNumberOfChars()` Returns the total number of characters to be rendered within the current element.
`float` `getRotationOfChar(int charnum)` Returns the rotation value relative to the current user coordinate system used to render the glyph(s) corresponding to the specified character.
`java.awt.geom.Point2D` `getStartPositionOfChar(int charnum)` Returns the current text position before rendering the character in the user coordinate system for rendering the glyph(s) that correspond to the specified character.
`float` `getSubStringLength(int charnum, int nchars)`
`void` `selectSubString(int charnum, int nchars)` Causes the specified substring to be selected just as if the user selected the substring interactively.

Method Detail

### getNumberOfChars

    public int getNumberOfChars()

  Returns the total number of characters to be rendered within the current element. Includes characters which are included via a <tref> reference.

  Returns:
    Total number of characters.

### getExtentOfChar

    public java.awt.geom.Rectangle2D getExtentOfChar(int charnum)

  Returns a tightest rectangle which defines the minimum and maximum X and Y values in the user coordinate system for rendering the glyph(s) that correspond to the specified character. The calculations assume that all glyphs occupy the full standard glyph cell for the font. If multiple consecutive characters are rendered inseparably (e.g., as a single glyph or a sequence of glyphs), then each of the inseparable characters will return the same extent.

  Parameters:
    `charnum` - The index of the character, where the first character has an index of 0.
  Returns:
    The rectangle which encloses all of the rendered glyph(s).

### getStartPositionOfChar

    public java.awt.geom.Point2D getStartPositionOfChar(int charnum)

  Returns the current text position before rendering the character in the user coordinate system for rendering the glyph(s) that correspond to the specified character. The current text position has already taken into account the effects of any inter- character adjustments due to properties 'kerning', 'letter-spacing' and 'word-spacing' and adjustments due to attributes x, y, dx and dy. If multiple consecutive characters are rendered inseparably (e.g., as a single glyph or a sequence of glyphs), then each of the inseparable characters will return the start position for the first glyph.

  Parameters:
    `charnum` - The index of the character, where the first character has an index of 0.
  Returns:
    The character's start position.

### getEndPositionOfChar

    public java.awt.geom.Point2D getEndPositionOfChar(int charnum)

  Returns the current text position after rendering the character in the user coordinate system for rendering the glyph(s) that correspond to the specified character. This current text position does not take into account the effects of any inter- character adjustments to prepare for the next character, such as properties 'kerning', 'letter-spacing' and 'word-spacing' and adjustments due to attributes x, y, dx and dy. If multiple consecutive characters are rendered inseparably (e.g., as a single glyph or a sequence of glyphs), then each of the inseparable characters will return the end position for the last glyph.

  Parameters:
    `charnum` - The index of the character, where the first character has an index of 0.
  Returns:
    The character's end position.

### getRotationOfChar

    public float getRotationOfChar(int charnum)

  Returns the rotation value relative to the current user coordinate system used to render the glyph(s) corresponding to the specified character. If multiple glyph(s) are used to render the given character and the glyphs each have different rotations (e.g., due to text-on-a-path), the user agent shall return an average value (e.g., the rotation angle at the midpoint along the path for all glyphs used to render this character). The rotation value represents the rotation that is supplemental to any rotation due to properties 'glyph-orientation-horizontal' and 'glyph-orientation-vertical'; thus, any glyph rotations due to these properties are not included into the returned rotation value. If multiple consecutive characters are rendered inseparably (e.g., as a single glyph or a sequence of glyphs), then each of the inseparable characters will return the same rotation value.

  Parameters:
    `charnum` - The index of the character, where the first character has an index of 0.
  Returns:
    The character's rotation angle.

### selectSubString

    public void selectSubString(int charnum,
                                int nchars)

  Causes the specified substring to be selected just as if the user selected the substring interactively.

  Parameters:
    `charnum` - : The index of the start character which is at the given point, where the first character has an index of 0.
    `nchars` - : The number of characters in the substring. If nchars specifies more characters than are available, then the substring will consist of all characters starting with charnum until the end of the list of characters.

### getComputedTextLength

    public float getComputedTextLength()

### getSubStringLength

    public float getSubStringLength(int charnum,
                                    int nchars)

### getCharNumAtPosition

    public int getCharNumAtPosition(float x,
                                    float y)

Copyright © 2004 Apache Software Foundation. All Rights Reserved.