Class ShapeGraphicAttribute
java.lang.Object
java.awt.font.GraphicAttribute
java.awt.font.ShapeGraphicAttribute
The
ShapeGraphicAttribute
class is an implementation of
GraphicAttribute
that draws shapes in a TextLayout
.- See Also:
-
Field Summary
Modifier and TypeFieldDescriptionstatic final boolean
A key indicating the shape should be filled.static final boolean
A key indicating the shape should be stroked with a 1-pixel wide stroke.Fields inherited from class java.awt.font.GraphicAttribute
BOTTOM_ALIGNMENT, CENTER_BASELINE, HANGING_BASELINE, ROMAN_BASELINE, TOP_ALIGNMENT
-
Constructor Summary
ConstructorDescriptionShapeGraphicAttribute
(Shape shape, int alignment, boolean stroke) Constructs aShapeGraphicAttribute
for the specifiedShape
. -
Method Summary
Modifier and TypeMethodDescriptionvoid
draw
(Graphics2D graphics, float x, float y) Renders thisGraphicAttribute
at the specified location.boolean
Compares thisShapeGraphicAttribute
to the specifiedShapeGraphicAttribute
.boolean
Compares thisShapeGraphicAttribute
to the specifiedObject
.float
Returns the advance of thisShapeGraphicAttribute
.float
Returns the ascent of thisShapeGraphicAttribute
.Returns aRectangle2D
that encloses all of the bits drawn by thisShapeGraphicAttribute
relative to the rendering position.float
Returns the descent of thisShapeGraphicAttribute
.Return aShape
that represents the region that thisShapeGraphicAttribute
renders.int
hashCode()
Returns a hashcode for thisShapeGraphicAttribute
.Methods inherited from class java.awt.font.GraphicAttribute
getAlignment, getJustificationInfo
-
Field Details
-
STROKE
public static final boolean STROKEA key indicating the shape should be stroked with a 1-pixel wide stroke.- See Also:
-
FILL
public static final boolean FILLA key indicating the shape should be filled.- See Also:
-
-
Constructor Details
-
ShapeGraphicAttribute
Constructs aShapeGraphicAttribute
for the specifiedShape
.- Parameters:
shape
- theShape
to render. TheShape
is rendered with its origin at the origin of thisShapeGraphicAttribute
in the hostTextLayout
. This object maintains a reference toshape
.alignment
- one of the alignments from thisShapeGraphicAttribute
.stroke
-true
if theShape
should be stroked;false
if theShape
should be filled.
-
-
Method Details
-
getAscent
public float getAscent()Returns the ascent of thisShapeGraphicAttribute
. The ascent of aShapeGraphicAttribute
is the positive distance from the origin of itsShape
to the top of bounds of itsShape
.- Specified by:
getAscent
in classGraphicAttribute
- Returns:
- the ascent of this
ShapeGraphicAttribute
. - See Also:
-
getDescent
public float getDescent()Returns the descent of thisShapeGraphicAttribute
. The descent of aShapeGraphicAttribute
is the distance from the origin of itsShape
to the bottom of the bounds of itsShape
.- Specified by:
getDescent
in classGraphicAttribute
- Returns:
- the descent of this
ShapeGraphicAttribute
. - See Also:
-
getAdvance
public float getAdvance()Returns the advance of thisShapeGraphicAttribute
. The advance of aShapeGraphicAttribute
is the distance from the origin of itsShape
to the right side of the bounds of itsShape
.- Specified by:
getAdvance
in classGraphicAttribute
- Returns:
- the advance of this
ShapeGraphicAttribute
. - See Also:
-
draw
Renders thisGraphicAttribute
at the specified location.- Specified by:
draw
in classGraphicAttribute
- Parameters:
graphics
- theGraphics2D
into which to render the graphicx
- the user-space X coordinate where the graphic is renderedy
- the user-space Y coordinate where the graphic is rendered
-
getBounds
Returns aRectangle2D
that encloses all of the bits drawn by thisShapeGraphicAttribute
relative to the rendering position. A graphic can be rendered beyond its origin, ascent, descent, or advance; but if it does, this method's implementation should indicate where the graphic is rendered.- Overrides:
getBounds
in classGraphicAttribute
- Returns:
- a
Rectangle2D
that encloses all of the bits rendered by thisShapeGraphicAttribute
.
-
getOutline
Return aShape
that represents the region that thisShapeGraphicAttribute
renders. This is used when aTextLayout
is requested to return the outline of the text. The (untransformed) shape must not extend outside the rectangular bounds returned bygetBounds
.- Overrides:
getOutline
in classGraphicAttribute
- Parameters:
tx
- an optionalAffineTransform
to apply to the thisShapeGraphicAttribute
. This can be null.- Returns:
- the
Shape
representing this graphic attribute, suitable for stroking or filling. - Since:
- 1.6
-
hashCode
-
equals
-
equals
Compares thisShapeGraphicAttribute
to the specifiedShapeGraphicAttribute
.- Parameters:
rhs
- theShapeGraphicAttribute
to compare for equality- Returns:
true
if thisShapeGraphicAttribute
equalsrhs
;false
otherwise.
-