Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| Java™ Platform Standard Ed. 6
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## java.awt.font
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:
  `GraphicAttribute`

Field Summary
`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 inherited from class java.awt.font.GraphicAttribute
`BOTTOM_ALIGNMENT, CENTER_BASELINE, HANGING_BASELINE, ROMAN_BASELINE, TOP_ALIGNMENT`

Constructor Summary
`ShapeGraphicAttribute(Shape shape, int alignment, boolean stroke)` Constructs a `ShapeGraphicAttribute` for the specified `Shape`.

Method Summary
`void` | `draw(Graphics2D graphics, float x, float y)` Renders this `GraphicAttribute` at the specified location.
`boolean` | `equals(Object rhs)` Compares this `ShapeGraphicAttribute` to the specified `Object`.
`boolean` | `equals(ShapeGraphicAttribute rhs)` Compares this `ShapeGraphicAttribute` to the specified `ShapeGraphicAttribute`.
`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(AffineTransform tx)` Return a `Shape` that represents the region that this `ShapeGraphicAttribute` renders.
`int` | `hashCode()` Returns a hashcode for this `ShapeGraphicAttribute`.

Methods inherited from class java.awt.font.GraphicAttribute
`getAlignment, getJustificationInfo`

Methods inherited from class java.lang.Object
`clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait`

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

### hashCode

    public int hashCode()

  Returns a hashcode for this `ShapeGraphicAttribute`.

  Overrides:
    `hashCode` in class `Object`
  Returns:
    a hash code value for this `ShapeGraphicAttribute`.
  See Also:
    `Object.equals(java.lang.Object)`, `Hashtable`

### 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()`, `Hashtable`

### 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.

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| Java™ Platform Standard Ed. 6
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Submit a bug or feature
For further API reference and developer documentation, see Java SE Developer Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.

Copyright 2008 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Also see the documentation redistribution policy.