org.apache.batik.dom.svg
Interface SVGTextContent

All Known Implementing Classes:
BatikFlowTextElementBridge, BatikFlowTextElementBridge.BatikFlowContentBridge, SVG12TextElementBridge, SVGFlowRootElementBridge, SVGFlowRootElementBridge.FlowContentBridge, SVGTextElementBridge, SVGTextElementBridge.AbstractTextChildTextContent, SVGTextElementBridge.TextPathBridge, SVGTextElementBridge.TRefBridge, SVGTextElementBridge.TspanBridge

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()
           
 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.
 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.
 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

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

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

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

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

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

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

float getComputedTextLength()

getSubStringLength

float getSubStringLength(int charnum,
                         int nchars)

getCharNumAtPosition

int getCharNumAtPosition(float x,
                         float y)


Copyright © 2008 Apache Software Foundation. All Rights Reserved.