java.lang.Object
java.awt.font.GraphicAttribute
java.awt.font.ShapeGraphicAttribute
public final class ShapeGraphicAttribute extends GraphicAttribute
The
ShapeGraphicAttribute
class is an implementation of
GraphicAttribute
that draws shapes in a TextLayout
.- See Also:
GraphicAttribute
-
Field Summary
Fields Modifier and Type Field Description static boolean
FILL
A key indicating the shape should be filled.static boolean
STROKE
A key indicating the shape should be stroked with a 1-pixel wide stroke.Fields declared in class java.awt.font.GraphicAttribute
BOTTOM_ALIGNMENT, CENTER_BASELINE, HANGING_BASELINE, ROMAN_BASELINE, TOP_ALIGNMENT
-
Constructor Summary
Constructors Constructor Description ShapeGraphicAttribute(Shape shape, int alignment, boolean stroke)
Constructs aShapeGraphicAttribute
for the specifiedShape
. -
Method Summary
Modifier and Type Method Description boolean
equals(ShapeGraphicAttribute rhs)
Compares thisShapeGraphicAttribute
to the specifiedShapeGraphicAttribute
.boolean
equals(Object rhs)
Compares thisShapeGraphicAttribute
to the specifiedObject
.float
getAdvance()
Returns the advance of thisShapeGraphicAttribute
.float
getAscent()
Returns the ascent of thisShapeGraphicAttribute
.Rectangle2D
getBounds()
Returns aRectangle2D
that encloses all of the bits drawn by thisShapeGraphicAttribute
relative to the rendering position.float
getDescent()
Returns the descent of thisShapeGraphicAttribute
.Shape
getOutline(AffineTransform tx)
Return aShape
that represents the region that thisShapeGraphicAttribute
renders.int
hashCode()
Returns a hashcode for thisShapeGraphicAttribute
.Methods declared in class java.awt.font.GraphicAttribute
draw, 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:
- Constant Field Values
-
FILL
public static final boolean FILLA key indicating the shape should be filled.- See Also:
- Constant Field Values
-
-
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:
GraphicAttribute.getBounds()
-
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:
GraphicAttribute.getBounds()
-
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:
GraphicAttribute.getBounds()
-
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
public int hashCode()Returns a hashcode for thisShapeGraphicAttribute
.- Overrides:
hashCode
in classObject
- Returns:
- a hash code value for this
ShapeGraphicAttribute
. - See Also:
Object.equals(java.lang.Object)
,System.identityHashCode(java.lang.Object)
-
equals
Compares thisShapeGraphicAttribute
to the specifiedObject
.- Overrides:
equals
in classObject
- Parameters:
rhs
- theObject
to compare for equality- Returns:
true
if thisShapeGraphicAttribute
equalsrhs
;false
otherwise.- See Also:
Object.hashCode()
,HashMap
-
equals
Compares thisShapeGraphicAttribute
to the specifiedShapeGraphicAttribute
.- Parameters:
rhs
- theShapeGraphicAttribute
to compare for equality- Returns:
true
if thisShapeGraphicAttribute
equalsrhs
;false
otherwise.
-