Class ShapeGraphicAttribute
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:
Field Summary
Modifier and Type | Field | Description |
---|---|---|
static final boolean |
FILL |
A key indicating the shape should be filled. |
static final 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
Constructor | Description |
---|---|
ShapeGraphicAttribute |
Constructs a ShapeGraphicAttribute for the specified Shape . |
Method Summary
Modifier and Type | Method | Description |
---|---|---|
void |
draw |
Renders this GraphicAttribute at the specified location. |
boolean |
equals |
Compares this ShapeGraphicAttribute to the specified ShapeGraphicAttribute . |
boolean |
equals |
Compares this ShapeGraphicAttribute to the specified Object . |
float |
getAdvance() |
Returns the advance of this ShapeGraphicAttribute . |
float |
getAscent() |
Returns the ascent of this ShapeGraphicAttribute . |
Rectangle2D |
getBounds() |
Returns a Rectangle2D that encloses all of the bits drawn by this ShapeGraphicAttribute relative to the rendering position. |
float |
getDescent() |
Returns the descent of this ShapeGraphicAttribute . |
Shape |
getOutline |
Return a Shape that represents the region that this ShapeGraphicAttribute renders. |
int |
hashCode() |
Returns a hashcode for this ShapeGraphicAttribute . |
Methods declared in class java.awt.font.GraphicAttribute
getAlignment, getJustificationInfo
Field Details
STROKE
public static final boolean STROKE
A key indicating the shape should be stroked with a 1-pixel wide stroke.
- See Also:
FILL
public static final boolean FILL
A key indicating the shape should be filled.
- See Also:
Constructor Details
ShapeGraphicAttribute
public ShapeGraphicAttribute(Shape shape, int alignment, boolean stroke)
Constructs a
ShapeGraphicAttribute
for the specified Shape
.- 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 this
ShapeGraphicAttribute
. The ascent of a ShapeGraphicAttribute
is the positive distance from the origin of its Shape
to the top of bounds of its Shape
.- Specified by:
-
getAscent
in classGraphicAttribute
- Returns:
- the ascent of this
ShapeGraphicAttribute
. - See Also:
getDescent
public float getDescent()
Returns the descent of this
ShapeGraphicAttribute
. The descent of a ShapeGraphicAttribute
is the distance from the origin of its Shape
to the bottom of the bounds of its Shape
.- Specified by:
-
getDescent
in classGraphicAttribute
- Returns:
- the descent of this
ShapeGraphicAttribute
. - See Also:
getAdvance
public float getAdvance()
Returns the advance of this
ShapeGraphicAttribute
. The advance of a ShapeGraphicAttribute
is the distance from the origin of its Shape
to the right side of the bounds of its Shape
.- Specified by:
-
getAdvance
in classGraphicAttribute
- Returns:
- the advance of this
ShapeGraphicAttribute
. - See Also:
draw
public void draw(Graphics2D graphics, float x, float y)
Renders this
GraphicAttribute
at the specified location.- Specified by:
-
draw
in classGraphicAttribute
- Parameters:
-
graphics
- theGraphics2D
into which to render the graphic -
x
- the user-space X coordinate where the graphic is rendered -
y
- the user-space Y coordinate where the graphic is rendered
getBounds
public Rectangle2D getBounds()
Returns a
Rectangle2D
that encloses all of the bits drawn by this ShapeGraphicAttribute
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
public Shape getOutline(AffineTransform tx)
Return a
Shape
that represents the region that this ShapeGraphicAttribute
renders. This is used when a TextLayout
is requested to return the outline of the text. The (untransformed) shape must not extend outside the rectangular bounds returned by getBounds
.- 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 this
ShapeGraphicAttribute
.equals
public boolean equals(Object rhs)
Compares this
ShapeGraphicAttribute
to the specified Object
.equals
public boolean equals(ShapeGraphicAttribute rhs)
Compares this
ShapeGraphicAttribute
to the specified ShapeGraphicAttribute
.- Parameters:
-
rhs
- theShapeGraphicAttribute
to compare for equality - Returns:
-
true
if thisShapeGraphicAttribute
equalsrhs
;false
otherwise.
© 1993, 2021, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://docs.oracle.com/en/java/javase/17/docs/api/java.desktop/java/awt/font/ShapeGraphicAttribute.html