Package com.reportmill.text
Class RMTextLine
java.lang.Object
com.reportmill.base.RMObject
com.reportmill.text.RMTextLine
- All Implemented Interfaces:
RMArchiver.Archiving,Cloneable
This class represents a line of characters in a text layout. It is made up of frags.
-
Constructor Summary
ConstructorsConstructorDescriptionRMTextLine(RMTextLayout aLayout, RMTextLine aLastLine) Creates an empty line object for a given layout. -
Method Summary
Modifier and TypeMethodDescriptionaddFrag()Adds an empty frag to the line.char[]chars()Returns a char array of the chars in the line.voidCalled after we added frags.voidCalled before we start adding frags.intgetCharForX(float x) Returns the character index of the character at the given x position.intgetEnd()Returns the end character index of the line.booleanReturns whether line ends with newline.getFrag(int anIndex) Returns the text frag at the given index.intReturns the number of frags in this line.Returns the last text frag of this line.floatReturns the max height of the chars in this line.floatgetHeight(boolean includeGap) Returns the max height of the chars in this line.floatReturns the max x position possible for layout's path.floatReturns the indent for this line.intReturns the index of the last word break character in the line.Returns the layout that this line is associated with.floatReturns the max leading of the chars in this line.floatReturns the max ascent of the chars in this line.floatReturns the max descent of the chars in this line.floatgetMaxX()Returns the maxX position for this line (in same coords as the layout frame).floatgetMaxY()Returns the maxY position for this line (in same coords as the layout frame).floatgetMaxY(boolean includeGap) Returns the maxY position for this line (in same coords as the layout frame).floatReturns what this line thinks is the next line's x.intgetStart()Returns the start character index of the line.floatReturns the max stroke width of any underlined chars in this line.floatReturns the Y position of any underlined chars in this line.floatgetWidth()Returns the width of this line of chars.floatgetX()Returns the x position for this line (in same coords as the layout frame).floatgetY()Returns the maxY position for this line (in same coords as the layout frame).floatReturns the y position for this line (in same coords as the layout frame).booleanhasTab()Returns whether line has a tab.booleanisEmpty()Returns whether line has nothing in it.voidvoidIf line has any non-left tabs this method adjusts the width of the tab frags (and the positions of successive frags to correct for shift of these tabs).voidreset()Resets the line ivars (so that it can be reused).voidstrip(int start) Strips all characters after the given index from this line.toString()Returns the line as a string.Methods inherited from class com.reportmill.base.RMObject
clone, copy, didChange, didUndo, getAnimAttribute, getClassNameShort, initWithArchiver, undoClone, undoCopy, undoEquals
-
Constructor Details
-
RMTextLine
Creates an empty line object for a given layout.
-
-
Method Details
-
getLayout
Returns the layout that this line is associated with. -
getStart
public int getStart()Returns the start character index of the line. -
getEnd
public int getEnd()Returns the end character index of the line. -
isEmpty
public boolean isEmpty()Returns whether line has nothing in it. -
getX
public float getX()Returns the x position for this line (in same coords as the layout frame). -
getY
public float getY()Returns the maxY position for this line (in same coords as the layout frame). -
getWidth
public float getWidth()Returns the width of this line of chars. -
getHeight
public float getHeight()Returns the max height of the chars in this line. -
getHeight
public float getHeight(boolean includeGap) Returns the max height of the chars in this line. -
getYBaseline
public float getYBaseline()Returns the y position for this line (in same coords as the layout frame). -
getMaxX
public float getMaxX()Returns the maxX position for this line (in same coords as the layout frame). -
getMaxY
public float getMaxY()Returns the maxY position for this line (in same coords as the layout frame). -
getMaxY
public float getMaxY(boolean includeGap) Returns the maxY position for this line (in same coords as the layout frame). -
getHitMaxX
public float getHitMaxX()Returns the max x position possible for layout's path. -
getNextLineX
public float getNextLineX()Returns what this line thinks is the next line's x. -
getMaxAscent
public float getMaxAscent()Returns the max ascent of the chars in this line. -
getMaxDescent
public float getMaxDescent()Returns the max descent of the chars in this line. -
getLeading
public float getLeading()Returns the max leading of the chars in this line. -
getIndent
public float getIndent()Returns the indent for this line. -
getUnderlineStroke
public float getUnderlineStroke()Returns the max stroke width of any underlined chars in this line. -
getUnderlineY
public float getUnderlineY()Returns the Y position of any underlined chars in this line. -
getLastWordStart
public int getLastWordStart()Returns the index of the last word break character in the line. -
strip
public void strip(int start) Strips all characters after the given index from this line. -
getCharForX
public int getCharForX(float x) Returns the character index of the character at the given x position. -
getFragCount
public int getFragCount()Returns the number of frags in this line. -
getFrag
Returns the text frag at the given index. -
getFragLast
Returns the last text frag of this line. -
addFrag
Adds an empty frag to the line. -
getEndsWithNewline
public boolean getEndsWithNewline()Returns whether line ends with newline. -
hasTab
public boolean hasTab()Returns whether line has a tab. -
performTabShift
public void performTabShift()If line has any non-left tabs this method adjusts the width of the tab frags (and the positions of successive frags to correct for shift of these tabs). -
fragAddStart
public void fragAddStart()Called before we start adding frags. -
fragAddEnd
public void fragAddEnd()Called after we added frags. -
lineAddEnd
public void lineAddEnd() -
reset
public void reset()Resets the line ivars (so that it can be reused). -
chars
public char[] chars()Returns a char array of the chars in the line. -
toString
Returns the line as a string.
-