|
ReportMill 10 API | ||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectcom.reportmill.base.RMObject
com.reportmill.shape.RMShape
com.reportmill.shape.RMRectangle
com.reportmill.shape.RMText
public class RMText
This class is an RMShape subclass for handling rich text. Text is probably the most common and useful element in a ReportMill template. You might use this class to programatically build or modify a template, like this:
RMXString xstring = new RMXString("Hello world!", RMFont.getFont("Arial", 12), RMColor.red); RMText text = new RMText(xstring); template.getPage(0).addChild(text); text.setXY(36, 36); text.setSizeToFit();
Field Summary | |
---|---|
static byte |
ALIGN_BOTTOM
|
static byte |
ALIGN_CENTER
|
static byte |
ALIGN_FULL
|
static byte |
ALIGN_LEFT
|
static byte |
ALIGN_MIDDLE
|
static byte |
ALIGN_RIGHT
|
static byte |
ALIGN_TOP
|
static byte |
WRAP_BASIC
|
static byte |
WRAP_NONE
|
static byte |
WRAP_SCALE
|
Fields inherited from class com.reportmill.shape.RMShape |
---|
WRAP_TYPE_BOTH, WRAP_TYPE_NONE |
Constructor Summary | |
---|---|
RMText()
Creates an empty text instance. |
|
RMText(RMXString string)
Creates a text instance initialized with the given RMXString. |
|
RMText(java.lang.String plainText)
Creates a text instance initialized with the given plain text String. |
Method Summary | |
---|---|
java.lang.Object |
clone()
Standard clone implementation. |
void |
copy(java.lang.Object anObj)
Copies attributes from given object. |
boolean |
equals(java.lang.Object anObj)
Standard equals implementation. |
java.lang.Object |
fromXML(com.reportmill.archiver.RXArchiver anArchiver,
com.reportmill.archiver.RXElement anElement)
XML unarchival. |
void |
fromXMLFinish(com.reportmill.archiver.RXArchiver anArchiver,
com.reportmill.archiver.RXElement anElement)
XML reference unarchival - to unarchive linked text. |
byte |
getAlign()
Returns the alignment for char 0. |
java.lang.String |
getAlignString()
Returns the alignment as a string, one of: "left", "center" or "right". |
byte |
getAlignVertical()
Returns the vertical alignment. |
java.lang.String |
getAlignVerticalString()
Returns the vertical alignment as a string (one of: "top", "middle" or "bottom"). |
RMRect |
getBoundsFromTextBounds(RMRect aRect)
Returns bounds from given text bounds, adjusted to account for text margins. |
float |
getCharSpacing()
Returns the char spacing at char 0. |
boolean |
getCoalesceNewlines()
Returns whether text should coalesce consecutive newlines in rpgClone. |
boolean |
getDrawsSelectionRect()
Returns whether text should always draw at least a light gray border (useful when editing). |
RMFont |
getFont()
Returns the font for char 0. |
RMFormat |
getFormat()
Returns the format for char 0. |
float |
getHeightToFit()
Returns the ideal height for this RMText. |
float |
getHeightToFit(boolean includeFinalEmptyLine)
Returns the ideal height for this RMText. |
float |
getLineGap()
Returns the line gap at char 0. |
float |
getLineHeightMax()
Returns the maximum line height at char 0. |
float |
getLineHeightMin()
Returns the minimum line height at char 0. |
float |
getLineSpacing()
Returns the line spacing at char 0. |
com.reportmill.shape.RMLinkedText |
getLinkedText()
Returns the linked text for this text (if any). |
float |
getMarginBottom()
Returns the bottom margin of the text (defaults to 0). |
float |
getMarginLeft()
Returns the left margin of the text (default to 2). |
float |
getMarginRight()
Returns the right margin of the text (defaults to 2). |
float |
getMarginTop()
Returns the top margin of the text (defaults to 1). |
RMXString.Outline |
getOutline()
Returns the outline for char 0. |
RMPath |
getPath()
Returns the path for this shape. |
RMPath |
getPathInBounds()
Overrides shape implementation to pass through getPathInBounds(inset). |
RMPath |
getPathInBounds(int inset)
Returns the shape's path scaled to the shape's current bounds. |
RMShape |
getPathShape()
Returns the shape that provides the path for this text to wrap text to. |
boolean |
getPerformsWrap()
Returns whether text should wrap around other shapes that cause wrap. |
RMPolygon |
getPolygonForFrag(com.reportmill.text.RMTextFrag aFrag)
Returns a polygon shape for the glyphs in a given text frag. |
java.lang.String |
getText()
Returns the text associated with this RMText as a plain String. |
RMRect |
getTextBounds()
Returns the actual bounding rect of the text (currently just inset 2 pixels on either side). |
RMColor |
getTextColor()
Returns the color of the first character of the xstring associated with this RMText. |
com.reportmill.text.RMTextLayout |
getTextLayout()
Returns a text layout configured for this text, with layout already performed. |
com.reportmill.text.RMTextLayout |
getTextLayout(boolean performLayout)
Returns a text layout configured for this text, with an option to perform layout. |
RMPoint |
getTextOrigin()
Returns the point inside this text where the first character is placed. |
int |
getVisibleEnd()
Returns the last character index visible in this text. |
int |
getVisibleStart()
Returns the first character index visible in this text. |
float |
getWidthToFit()
Returns the ideal width for this RMText. |
byte |
getWraps()
Returns the wrapping behavior for over-filled rpgCloned text (NONE, WRAP, SHRINK). |
RMXString |
getXString()
Returns the XString associated with this RMText. |
boolean |
isAllTextVisible()
Returns whether all characters can be visibly rendered in text bounds. |
boolean |
isStructured()
Editor method. |
boolean |
isUnderlined()
Returns if char 0 is underlined. |
int |
length()
Returns the length, in characters, of the XString associated with this RMText. |
void |
peerDidChange(RMShape aShape)
This notification method is called when any peer is changed. |
void |
resolvePageReferences(com.reportmill.base.ReportMill aReportMill,
java.lang.Object userInfo)
Re-does the RPG clone to resolve any @Page@ keys (assumed to be present in userInfo). |
RMShape |
rpgClone(com.reportmill.base.ReportMill aReportMill)
This method clones the RMText, performing subtition on the XString. |
void |
rpgClonePreprocess(com.reportmill.base.ReportMill aReportMill)
This standard rpgClone hook allows texts set to wrap to perform the wrap. |
void |
scaleFonts(float aFactor)
Resizes all the font's in text string by given factor. |
void |
scaleTextToFit()
Scales font sizes of all text in an RMText shape to fit in bounds. |
void |
setAlign(int align)
Sets the align for all chars. |
void |
setAlignVertical(byte anAlignment)
Sets the vertical alginment. |
void |
setAlignVerticalString(java.lang.String aString)
Sets the vertical alignment by a string (one of "top", "middle" or "bottom"). |
void |
setCharSpacing(float aValue)
Sets the char spacing for the text string. |
void |
setCoalesceNewlines(boolean aFlag)
Sets whether text should coalesce consecutive newlines in rpgClone. |
void |
setDrawsSelectionRect(boolean aValue)
Sets whether text should always draw at least a light-gray border (useful when editing). |
void |
setFont(RMFont aFont)
Sets the font for all characters. |
void |
setFormat(RMFormat aFormat)
Sets the format for all characters. |
void |
setHeight(double aValue)
Overrides shape implementation to reset height to fit. |
void |
setHeightToFit(float aValue)
Sets the text's height to fit (often called with -1 to force recalc). |
void |
setLineGap(float aHeight)
Sets the line gap for all chars. |
void |
setLineHeightMax(float aHeight)
Sets the maximum line height for all chars. |
void |
setLineHeightMin(float aHeight)
Sets the minimum line height for all chars. |
void |
setLineSpacing(float aHeight)
Sets the line spacing for all chars. |
void |
setLinkedText(com.reportmill.shape.RMLinkedText anLinkedText)
Sets the linked text for this text (if any). |
void |
setNeedsRepaint()
Editor method - passes on repaints to linked text. |
void |
setOutline(RMXString.Outline anOutline)
Sets the Outline for all characters. |
void |
setPathShape(RMShape aShape)
Sets the shape that provides the path for this text to wrap text to. |
void |
setPerformsWrap(boolean aFlag)
Sets whether text should wrap around other shapes that cause wrap. |
void |
setRadius(float aValue)
Overrides rectangle implementation to potentially force text relayout. |
void |
setText(java.lang.String aString)
Replaces the current text associated with this RMText with the given String. |
void |
setTextColor(RMColor aColor)
Sets the color of the characters in the XString associated with this RMText. |
void |
setUnderlined(boolean aFlag)
Sets all chars to be underlined. |
void |
setWraps(byte aValue)
Sets the wrapping behavior for over-filled rpgCloned text (NONE, WRAP, SHRINK). |
void |
setXString(RMXString xString)
Sets the XString associated with this RMText. |
boolean |
superSelectable()
Editor method - indicates that this shape can be super selected. |
java.lang.String |
toString()
Standard toSring implementation. |
com.reportmill.archiver.RXElement |
toXML(com.reportmill.archiver.RXArchiver anArchiver)
XML archival. |
RMShape |
turnToChars(boolean inPlace)
Returns a group shape with an RMText shape for each glyph in the text. |
RMShape |
turnToPath(boolean inPlace)
Returns an RMPolygon shape with the glyph path for the chars in this text. |
Methods inherited from class com.reportmill.shape.RMRectangle |
---|
getRadius |
Methods inherited from class com.reportmill.base.RMObject |
---|
didUndo, getAnimAttribute, getClassNameShort |
Methods inherited from class java.lang.Object |
---|
getClass, hashCode, notify, notifyAll, wait, wait, wait |
Field Detail |
---|
public static final byte ALIGN_LEFT
public static final byte ALIGN_CENTER
public static final byte ALIGN_RIGHT
public static final byte ALIGN_FULL
public static final byte ALIGN_TOP
public static final byte ALIGN_MIDDLE
public static final byte ALIGN_BOTTOM
public static final byte WRAP_NONE
public static final byte WRAP_BASIC
public static final byte WRAP_SCALE
Constructor Detail |
---|
public RMText()
public RMText(RMXString string)
public RMText(java.lang.String plainText)
Method Detail |
---|
public RMXString getXString()
public void setXString(RMXString xString)
public int length()
public java.lang.String getText()
public void setText(java.lang.String aString)
public int getVisibleStart()
public int getVisibleEnd()
public boolean isAllTextVisible()
public RMFont getFont()
getFont
in class RMShape
public void setFont(RMFont aFont)
setFont
in class RMShape
public RMFormat getFormat()
getFormat
in class RMShape
public void setFormat(RMFormat aFormat)
setFormat
in class RMShape
public RMColor getTextColor()
getTextColor
in class RMShape
public void setTextColor(RMColor aColor)
setTextColor
in class RMShape
public boolean isUnderlined()
isUnderlined
in class RMShape
public void setUnderlined(boolean aFlag)
setUnderlined
in class RMShape
public RMXString.Outline getOutline()
getOutline
in class RMShape
public void setOutline(RMXString.Outline anOutline)
setOutline
in class RMShape
public byte getAlign()
public void setAlign(int align)
public java.lang.String getAlignString()
public byte getAlignVertical()
public void setAlignVertical(byte anAlignment)
public java.lang.String getAlignVerticalString()
public void setAlignVerticalString(java.lang.String aString)
public byte getWraps()
public void setWraps(byte aValue)
public boolean getPerformsWrap()
public void setPerformsWrap(boolean aFlag)
public boolean getCoalesceNewlines()
public void setCoalesceNewlines(boolean aFlag)
public boolean getDrawsSelectionRect()
public void setDrawsSelectionRect(boolean aValue)
public float getCharSpacing()
public void setCharSpacing(float aValue)
public float getLineSpacing()
public void setLineSpacing(float aHeight)
public float getLineGap()
public void setLineGap(float aHeight)
public float getLineHeightMin()
public void setLineHeightMin(float aHeight)
public float getLineHeightMax()
public void setLineHeightMax(float aHeight)
public RMPoint getTextOrigin()
public float getMarginLeft()
public float getMarginRight()
public float getMarginTop()
public float getMarginBottom()
public RMRect getTextBounds()
public RMRect getBoundsFromTextBounds(RMRect aRect)
public RMPath getPath()
getPath
in class RMRectangle
public RMPath getPathInBounds()
getPathInBounds
in class RMShape
public RMPath getPathInBounds(int inset)
public void peerDidChange(RMShape aShape)
public RMShape getPathShape()
public void setPathShape(RMShape aShape)
public void setHeight(double aValue)
setHeight
in class RMShape
public void setRadius(float aValue)
setRadius
in class RMRectangle
public com.reportmill.shape.RMLinkedText getLinkedText()
public void setLinkedText(com.reportmill.shape.RMLinkedText anLinkedText)
public com.reportmill.text.RMTextLayout getTextLayout()
public com.reportmill.text.RMTextLayout getTextLayout(boolean performLayout)
public float getWidthToFit()
getWidthToFit
in class RMShape
public float getHeightToFit()
getHeightToFit
in class RMShape
public float getHeightToFit(boolean includeFinalEmptyLine)
public void setHeightToFit(float aValue)
public void scaleTextToFit()
public void scaleFonts(float aFactor)
public RMShape rpgClone(com.reportmill.base.ReportMill aReportMill)
rpgClone
in class RMShape
public void rpgClonePreprocess(com.reportmill.base.ReportMill aReportMill)
rpgClonePreprocess
in class RMShape
public void resolvePageReferences(com.reportmill.base.ReportMill aReportMill, java.lang.Object userInfo)
resolvePageReferences
in class RMShape
public java.lang.String toString()
toString
in class RMShape
public RMShape turnToChars(boolean inPlace)
public RMShape turnToPath(boolean inPlace)
public RMPolygon getPolygonForFrag(com.reportmill.text.RMTextFrag aFrag)
public boolean superSelectable()
superSelectable
in class RMShape
public boolean isStructured()
public void setNeedsRepaint()
setNeedsRepaint
in class RMShape
public boolean equals(java.lang.Object anObj)
equals
in class RMRectangle
public java.lang.Object clone()
clone
in class RMShape
public void copy(java.lang.Object anObj)
copy
in class RMRectangle
public com.reportmill.archiver.RXElement toXML(com.reportmill.archiver.RXArchiver anArchiver)
toXML
in class RMRectangle
public java.lang.Object fromXML(com.reportmill.archiver.RXArchiver anArchiver, com.reportmill.archiver.RXElement anElement)
fromXML
in class RMRectangle
public void fromXMLFinish(com.reportmill.archiver.RXArchiver anArchiver, com.reportmill.archiver.RXElement anElement)
|
ReportMill 10 API | ||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |