public final class TextMeasurer extends Object implements Cloneable
Constructor and Description |
---|
TextMeasurer(AttributedCharacterIterator text,
FontRenderContext frc)
Creates a TextMeasurer from a given text in the form of an
AttributedCharacterIterator and a
FontRenderContext . |
Modifier and Type | Method and Description |
---|---|
protected Object |
clone()
Clones the TextMeasurer object
|
void |
deleteChar(AttributedCharacterIterator newParagraph,
int deletePos)
Update the text if a character is deleted at the position deletePos
|
float |
getAdvanceBetween(int start,
int limit)
Returns the total advance between two positions in the paragraph.
|
TextLayout |
getLayout(int start,
int limit)
Returns a
TextLayout object corresponding to the characters
from text to limit. |
int |
getLineBreakIndex(int start,
float maxAdvance)
Returns the line-break index from a given starting index and a maximum
advance.
|
void |
insertChar(AttributedCharacterIterator newParagraph,
int insertPos)
Update the text if a character is inserted at the position insertPos
|
public TextMeasurer(AttributedCharacterIterator text, FontRenderContext frc)
AttributedCharacterIterator
and a
FontRenderContext
.public void deleteChar(AttributedCharacterIterator newParagraph, int deletePos)
newParagraph
- - the updated paragraph.deletePos
- - the deletion positionpublic void insertChar(AttributedCharacterIterator newParagraph, int insertPos)
newParagraph
- - the updated paragraph.insertPos
- - the insertion positionpublic float getAdvanceBetween(int start, int limit)
start
- - the starting character index.limit
- - the limiting index.public TextLayout getLayout(int start, int limit)
TextLayout
object corresponding to the characters
from text to limit.start
- - the starting character index.limit
- - the limiting index.public int getLineBreakIndex(int start, float maxAdvance)
start
- - the starting index.maxAdvance
- - the maximum advance allowed.