public final class ShapeGraphicAttribute extends GraphicAttribute
ShapeGraphicAttribute class is an implementation of
 GraphicAttribute that draws shapes in a TextLayout.GraphicAttribute| Modifier and Type | Field and Description | 
|---|---|
| static boolean | FILLA key indicating the shape should be filled. | 
| static boolean | STROKEA key indicating the shape should be stroked with a 1-pixel wide stroke. | 
BOTTOM_ALIGNMENT, CENTER_BASELINE, HANGING_BASELINE, ROMAN_BASELINE, TOP_ALIGNMENT| Constructor and Description | 
|---|
| ShapeGraphicAttribute(Shape shape,
                     int alignment,
                     boolean stroke)Constructs a  ShapeGraphicAttributefor the specifiedShape. | 
| Modifier and Type | Method and Description | 
|---|---|
| void | draw(Graphics2D graphics,
    float x,
    float y)Renders this  GraphicAttributeat the specified
 location. | 
| boolean | equals(Object rhs)Compares this  ShapeGraphicAttributeto the specifiedObject. | 
| boolean | equals(ShapeGraphicAttribute rhs)Compares this  ShapeGraphicAttributeto the specifiedShapeGraphicAttribute. | 
| float | getAdvance()Returns the advance of this  ShapeGraphicAttribute. | 
| float | getAscent()Returns the ascent of this  ShapeGraphicAttribute. | 
| Rectangle2D | getBounds()Returns a  Rectangle2Dthat encloses all of the
 bits drawn by thisShapeGraphicAttributerelative to
 the rendering position. | 
| float | getDescent()Returns the descent of this  ShapeGraphicAttribute. | 
| Shape | getOutline(AffineTransform tx)Return a  Shapethat represents the region that
 thisShapeGraphicAttributerenders. | 
| int | hashCode()Returns a hashcode for this  ShapeGraphicAttribute. | 
getAlignment, getJustificationInfopublic static final boolean STROKE
public static final boolean FILL
public ShapeGraphicAttribute(Shape shape, int alignment, boolean stroke)
ShapeGraphicAttribute for the specified
 Shape.shape - the Shape to render.  The
 Shape is rendered with its origin at the origin of
 this ShapeGraphicAttribute in the
 host TextLayout.  This object maintains a reference to
 shape.alignment - one of the alignments from this
 ShapeGraphicAttribute.stroke - true if the Shape should be
 stroked; false if the Shape should be
 filled.public float getAscent()
ShapeGraphicAttribute.  The
 ascent of a ShapeGraphicAttribute is the positive
 distance from the origin of its Shape to the top of
 bounds of its Shape.getAscent in class GraphicAttributeShapeGraphicAttribute.GraphicAttribute.getBounds()public float getDescent()
ShapeGraphicAttribute.
 The descent of a ShapeGraphicAttribute is the distance
 from the origin of its Shape to the bottom of the
 bounds of its Shape.getDescent in class GraphicAttributeShapeGraphicAttribute.GraphicAttribute.getBounds()public float getAdvance()
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.getAdvance in class GraphicAttributeShapeGraphicAttribute.GraphicAttribute.getBounds()public void draw(Graphics2D graphics, float x, float y)
GraphicAttribute at the specified
 location.draw in class GraphicAttributegraphics - the Graphics2D 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 renderedpublic Rectangle2D getBounds()
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.getBounds in class GraphicAttributeRectangle2D that encloses all of the bits
 rendered by this ShapeGraphicAttribute.public Shape getOutline(AffineTransform tx)
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.getOutline in class GraphicAttributetx - an optional AffineTransform to apply to the
   this ShapeGraphicAttribute. This can be null.Shape representing this graphic attribute,
   suitable for stroking or filling.public int hashCode()
ShapeGraphicAttribute.hashCode in class ObjectShapeGraphicAttribute.Object.equals(java.lang.Object), 
System.identityHashCode(java.lang.Object)public boolean equals(Object rhs)
ShapeGraphicAttribute to the specified
 Object.equals in class Objectrhs - the Object to compare for equalitytrue if this
 ShapeGraphicAttribute equals rhs;
 false otherwise.Object.hashCode(), 
HashMappublic boolean equals(ShapeGraphicAttribute rhs)
ShapeGraphicAttribute to the specified
 ShapeGraphicAttribute.rhs - the ShapeGraphicAttribute to compare for
 equalitytrue if this
 ShapeGraphicAttribute equals rhs;
 false otherwise. Submit a bug or feature 
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
 Copyright © 1993, 2025, Oracle and/or its affiliates.  All rights reserved. Use is subject to license terms. Also see the documentation redistribution policy.