Module java.desktop
Package java.awt.font

# Class ImageGraphicAttribute

java.lang.Object
java.awt.font.GraphicAttribute
java.awt.font.ImageGraphicAttribute

    public final class ImageGraphicAttribute
    extends GraphicAttribute

The `ImageGraphicAttribute` class is an implementation of `GraphicAttribute` which draws images in a `TextLayout`.

See Also:
  `GraphicAttribute`

## Field Summary

### Fields declared in class java.awt.font.GraphicAttribute

`BOTTOM_ALIGNMENT, CENTER_BASELINE, HANGING_BASELINE, ROMAN_BASELINE, TOP_ALIGNMENT`

## Constructor Summary

Constructors
Constructor | Description
--- | ---
`ImageGraphicAttribute​(Image image, int alignment)` | Constructs an `ImageGraphicAttribute` from the specified `Image`.
`ImageGraphicAttribute​(Image image, int alignment, float originX, float originY)` | Constructs an `ImageGraphicAttribute` from the specified `Image`.

## Method Summary

Modifier and Type | Method | Description
--- | --- | ---
`boolean` | `equals​(ImageGraphicAttribute rhs)` | Compares this `ImageGraphicAttribute` to the specified `ImageGraphicAttribute`.
`boolean` | `equals​(Object rhs)` | Compares this `ImageGraphicAttribute` to the specified `Object`.
`float` | `getAdvance()` | Returns the advance of this `ImageGraphicAttribute`.
`float` | `getAscent()` | Returns the ascent of this `ImageGraphicAttribute`.
`Rectangle2D` | `getBounds()` | Returns a `Rectangle2D` that encloses all of the bits rendered by this `ImageGraphicAttribute`, relative to the rendering position.
`float` | `getDescent()` | Returns the descent of this `ImageGraphicAttribute`.
`int` | `hashCode()` | Returns a hashcode for this `ImageGraphicAttribute`.

### Methods declared in class java.awt.font.GraphicAttribute

`draw, getAlignment, getJustificationInfo, getOutline`

### Methods declared in class java.lang.Object

`clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait`

## Constructor Details

### ImageGraphicAttribute

public ImageGraphicAttribute​(Image image, int alignment)
Constructs an `ImageGraphicAttribute` from the specified `Image`. The origin is at (0, 0).

Parameters:
  `image` - the `Image` rendered by this `ImageGraphicAttribute`. This object keeps a reference to `image`.
  `alignment` - one of the alignments from this `ImageGraphicAttribute`

### ImageGraphicAttribute

public ImageGraphicAttribute​(Image image, int alignment, float originX, float originY)
Constructs an `ImageGraphicAttribute` from the specified `Image`. The point (`originX`, `originY`) in the `Image` appears at the origin of the `ImageGraphicAttribute` within the text.

Parameters:
  `image` - the `Image` rendered by this `ImageGraphicAttribute`. This object keeps a reference to `image`.
  `alignment` - one of the alignments from this `ImageGraphicAttribute`
  `originX` - the X coordinate of the point within the `Image` that appears at the origin of the `ImageGraphicAttribute` in the text line.
  `originY` - the Y coordinate of the point within the `Image` that appears at the origin of the `ImageGraphicAttribute` in the text line.

## Method Details

### getAscent

public float getAscent()
Returns the ascent of this `ImageGraphicAttribute`. The ascent of an `ImageGraphicAttribute` is the distance from the top of the image to the origin.

Specified by:
  `getAscent` in class `GraphicAttribute`
Returns:
  the ascent of this `ImageGraphicAttribute`.
See Also:
  `GraphicAttribute.getBounds()`

### getDescent

public float getDescent()
Returns the descent of this `ImageGraphicAttribute`. The descent of an `ImageGraphicAttribute` is the distance from the origin to the bottom of the image.

Specified by:
  `getDescent` in class `GraphicAttribute`
Returns:
  the descent of this `ImageGraphicAttribute`.
See Also:
  `GraphicAttribute.getBounds()`

### getAdvance

public float getAdvance()
Returns the advance of this `ImageGraphicAttribute`. The advance of an `ImageGraphicAttribute` is the distance from the origin to the right edge of the image.

Specified by:
  `getAdvance` in class `GraphicAttribute`
Returns:
  the advance of this `ImageGraphicAttribute`.
See Also:
  `GraphicAttribute.getBounds()`

### getBounds

public Rectangle2D getBounds()
Returns a `Rectangle2D` that encloses all of the bits rendered by this `ImageGraphicAttribute`, relative to the rendering position. A graphic can be rendered beyond its origin, ascent, descent, or advance; but if it is, this method's implementation must indicate where the graphic is rendered.

Overrides:
  `getBounds` in class `GraphicAttribute`
Returns:
  a `Rectangle2D` that encloses all of the bits rendered by this `ImageGraphicAttribute`.

### hashCode

public int hashCode()
Returns a hashcode for this `ImageGraphicAttribute`.

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

### equals

public boolean equals​(Object rhs)
Compares this `ImageGraphicAttribute` to the specified `Object`.

Overrides:
  `equals` in class `Object`
Parameters:
  `rhs` - the `Object` to compare for equality
Returns:
  `true` if this `ImageGraphicAttribute` equals `rhs`; `false` otherwise.
See Also:
  `Object.hashCode()`, `HashMap`

### equals

public boolean equals​(ImageGraphicAttribute rhs)
Compares this `ImageGraphicAttribute` to the specified `ImageGraphicAttribute`.

Parameters:
  `rhs` - the `ImageGraphicAttribute` to compare for equality
Returns:
  `true` if this `ImageGraphicAttribute` equals `rhs`; `false` otherwise.