public class TextUtils extends Object
Modifier and Type | Method and Description |
---|---|
static Rectangle2D |
calcAlignedStringBounds(String text,
Graphics2D g2,
float x,
float y,
TextAnchor anchor)
Returns the bounds of an aligned string.
|
static Shape |
calculateRotatedStringBounds(String text,
Graphics2D g2,
float textX,
float textY,
double angle,
float rotateX,
float rotateY)
Returns a shape that represents the bounds of the string after the
specified rotation has been applied.
|
static Shape |
calculateRotatedStringBounds(String text,
Graphics2D g2,
float x,
float y,
TextAnchor textAnchor,
double angle,
TextAnchor rotationAnchor)
Returns a shape that represents the bounds of the string after the
specified rotation has been applied.
|
static TextBlock |
createTextBlock(String text,
Font font,
Paint paint)
Creates a
TextBlock from a String . |
static TextBlock |
createTextBlock(String text,
Font font,
Paint paint,
float maxWidth,
int maxLines,
TextMeasurer measurer)
Creates a new text block from the given string, breaking the
text into lines so that the
maxWidth value is
respected. |
static TextBlock |
createTextBlock(String text,
Font font,
Paint paint,
float maxWidth,
TextMeasurer measurer)
Creates a new text block from the given string, breaking the
text into lines so that the
maxWidth value is respected. |
static Rectangle2D |
drawAlignedString(String text,
Graphics2D g2,
float x,
float y,
TextAnchor anchor)
Draws a string such that the specified anchor point is aligned to the
given (x, y) location.
|
static void |
drawRotatedString(String text,
Graphics2D g2,
double angle,
float x,
float y)
A utility method for drawing rotated text.
|
static void |
drawRotatedString(String text,
Graphics2D g2,
float textX,
float textY,
double angle,
float rotateX,
float rotateY)
A utility method for drawing rotated text.
|
static void |
drawRotatedString(String text,
Graphics2D g2,
float x,
float y,
TextAnchor textAnchor,
double angle,
float rotationX,
float rotationY)
Draws a string that is aligned by one anchor point and rotated about
another anchor point.
|
static void |
drawRotatedString(String text,
Graphics2D g2,
float x,
float y,
TextAnchor textAnchor,
double angle,
TextAnchor rotationAnchor)
Draws a string that is aligned by one anchor point and rotated about
another anchor point.
|
static boolean |
getDrawStringsWithFontAttributes()
Returns the flag that controls whether or not strings are drawn using
the current font attributes (such as underlining, strikethrough etc).
|
static Rectangle2D |
getTextBounds(String text,
Graphics2D g2,
FontMetrics fm)
Returns the bounds for the specified text.
|
static boolean |
getUseFontMetricsGetStringBounds()
Returns the flag that controls whether the FontMetrics.getStringBounds()
method is used or not.
|
static boolean |
isUseDrawRotatedStringWorkaround()
Returns the flag that controls whether or not a workaround is used for
drawing rotated strings.
|
static void |
setDrawStringsWithFontAttributes(boolean b)
Sets the flag that controls whether or not strings are drawn using the
current font attributes.
|
static void |
setUseDrawRotatedStringWorkaround(boolean use)
Sets the flag that controls whether or not a workaround is used for
drawing rotated strings.
|
static void |
setUseFontMetricsGetStringBounds(boolean use)
Sets the flag that controls whether the FontMetrics.getStringBounds()
method is used or not.
|
public static TextBlock createTextBlock(String text, Font font, Paint paint)
text
- the text.font
- the font.paint
- the paint.public static TextBlock createTextBlock(String text, Font font, Paint paint, float maxWidth, TextMeasurer measurer)
maxWidth
value is respected.text
- the text.font
- the font.paint
- the paint.maxWidth
- the maximum width for each line.measurer
- the text measurer.public static TextBlock createTextBlock(String text, Font font, Paint paint, float maxWidth, int maxLines, TextMeasurer measurer)
maxWidth
value is
respected.text
- the text.font
- the font.paint
- the paint.maxWidth
- the maximum width for each line.maxLines
- the maximum number of lines.measurer
- the text measurer.public static Rectangle2D getTextBounds(String text, Graphics2D g2, FontMetrics fm)
text
- the text (null
permitted).g2
- the graphics context (not null
).fm
- the font metrics (not null
).null
if the text
argument is null
).public static Rectangle2D calcAlignedStringBounds(String text, Graphics2D g2, float x, float y, TextAnchor anchor)
text
- the string (null
not permitted).g2
- the graphics target (null
not permitted).x
- the x-coordinate.y
- the y-coordinate.anchor
- the anchor point that will be aligned to
(x, y)
(null
not permitted).null
).public static Rectangle2D drawAlignedString(String text, Graphics2D g2, float x, float y, TextAnchor anchor)
text
- the text.g2
- the graphics device.x
- the x coordinate (Java 2D).y
- the y coordinate (Java 2D).anchor
- the anchor location.public static void drawRotatedString(String text, Graphics2D g2, double angle, float x, float y)
A common rotation is -Math.PI/2 which draws text 'vertically' (with the top of the characters on the left).
text
- the text.g2
- the graphics device.angle
- the angle of the (clockwise) rotation (in radians).x
- the x-coordinate.y
- the y-coordinate.public static void drawRotatedString(String text, Graphics2D g2, float textX, float textY, double angle, float rotateX, float rotateY)
A common rotation is -Math.PI/2 which draws text 'vertically' (with the top of the characters on the left).
text
- the text.g2
- the graphics device.textX
- the x-coordinate for the text (before rotation).textY
- the y-coordinate for the text (before rotation).angle
- the angle of the (clockwise) rotation (in radians).rotateX
- the point about which the text is rotated.rotateY
- the point about which the text is rotated.public static void drawRotatedString(String text, Graphics2D g2, float x, float y, TextAnchor textAnchor, double angle, float rotationX, float rotationY)
text
- the text.g2
- the graphics device.x
- the x-coordinate for positioning the text.y
- the y-coordinate for positioning the text.textAnchor
- the text anchor.angle
- the rotation angle.rotationX
- the x-coordinate for the rotation anchor point.rotationY
- the y-coordinate for the rotation anchor point.public static void drawRotatedString(String text, Graphics2D g2, float x, float y, TextAnchor textAnchor, double angle, TextAnchor rotationAnchor)
text
- the text.g2
- the graphics device.x
- the x-coordinate for positioning the text.y
- the y-coordinate for positioning the text.textAnchor
- the text anchor.angle
- the rotation angle (in radians).rotationAnchor
- the rotation anchor.public static Shape calculateRotatedStringBounds(String text, Graphics2D g2, float x, float y, TextAnchor textAnchor, double angle, TextAnchor rotationAnchor)
text
- the text (null
permitted).g2
- the graphics device.x
- the x coordinate for the anchor point.y
- the y coordinate for the anchor point.textAnchor
- the text anchor.angle
- the angle.rotationAnchor
- the rotation anchor.null
).public static Shape calculateRotatedStringBounds(String text, Graphics2D g2, float textX, float textY, double angle, float rotateX, float rotateY)
text
- the text (null
permitted).g2
- the graphics device.textX
- the x coordinate for the text.textY
- the y coordinate for the text.angle
- the angle.rotateX
- the x coordinate for the rotation point.rotateY
- the y coordinate for the rotation point.null
if text
is
null
or has zero length).public static boolean getUseFontMetricsGetStringBounds()
public static void setUseFontMetricsGetStringBounds(boolean use)
use
- the flag.public static boolean isUseDrawRotatedStringWorkaround()
public static void setUseDrawRotatedStringWorkaround(boolean use)
TextLayout
instance to draw the text instead of calling the
drawString()
method in the Graphics2D
class.use
- the new flag value.public static boolean getDrawStringsWithFontAttributes()
false
.public static void setDrawStringsWithFontAttributes(boolean b)
b
- the new flag value.Copyright © 2001–2017 JFree.org. All rights reserved.