Module java.desktop
Package java.awt.font

Class ShapeGraphicAttribute

    • Field Detail

      • STROKE

        public static final boolean STROKE
        A key indicating the shape should be stroked with a 1-pixel wide stroke.
        See Also:
        Constant Field Values
      • FILL

        public static final boolean FILL
        A key indicating the shape should be filled.
        See Also:
        Constant Field Values
    • Constructor Detail

      • ShapeGraphicAttribute

        public ShapeGraphicAttribute​(Shape shape,
                                     int alignment,
                                     boolean stroke)
        Constructs a ShapeGraphicAttribute for the specified Shape.
        Parameters:
        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.
    • Method Detail

      • 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 class GraphicAttribute
        Returns:
        the ascent of this ShapeGraphicAttribute.
        See Also:
        GraphicAttribute.getBounds()
      • 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 class GraphicAttribute
        Returns:
        the descent of this ShapeGraphicAttribute.
        See Also:
        GraphicAttribute.getBounds()
      • 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 class GraphicAttribute
        Returns:
        the advance of this ShapeGraphicAttribute.
        See Also:
        GraphicAttribute.getBounds()
      • draw

        public void draw​(Graphics2D graphics,
                         float x,
                         float y)
        Renders this GraphicAttribute at the specified location.
        Specified by:
        draw in class GraphicAttribute
        Parameters:
        graphics - the Graphics2D 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 class GraphicAttribute
        Returns:
        a Rectangle2D that encloses all of the bits rendered by this ShapeGraphicAttribute.
      • 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 class GraphicAttribute
        Parameters:
        tx - an optional AffineTransform to apply to the this ShapeGraphicAttribute. This can be null.
        Returns:
        the Shape representing this graphic attribute, suitable for stroking or filling.
        Since:
        1.6
      • equals

        public boolean equals​(Object rhs)
        Compares this ShapeGraphicAttribute to the specified Object.
        Overrides:
        equals in class Object
        Parameters:
        rhs - the Object to compare for equality
        Returns:
        true if this ShapeGraphicAttribute equals rhs; false otherwise.
        See Also:
        Object.hashCode(), HashMap
      • equals

        public boolean equals​(ShapeGraphicAttribute rhs)
        Compares this ShapeGraphicAttribute to the specified ShapeGraphicAttribute.
        Parameters:
        rhs - the ShapeGraphicAttribute to compare for equality
        Returns:
        true if this ShapeGraphicAttribute equals rhs; false otherwise.