java.awt.font

Class GraphicAttribute

Known Direct Subclasses:
ImageGraphicAttribute, ShapeGraphicAttribute

public abstract class GraphicAttribute
extends Object

This class represents a graphic embedded in text.

Field Summary

static int
BOTTOM_ALIGNMENT
static int
CENTER_BASELINE
static int
HANGING_BASELINE
static int
ROMAN_BASELINE
static int
TOP_ALIGNMENT

Constructor Summary

GraphicAttribute(int alignment)
Constructor.

Method Summary

abstract void
draw(Graphics2D graphics, float x, float y)
Draws the graphic.
abstract float
getAdvance()
Gets the distance from the origin of its graphic to the right side of the bounds of its graphic.
int
getAlignment()
Gets the alignment.
abstract float
getAscent()
Gets the positive distance from the origin of its graphic to the top of bounds.
Rectangle2D
getBounds()
Returns a Rectangle2D that encloses the rendered area.
abstract float
getDescent()
Gets the distance from the origin of its graphic to the bottom of the bounds.
GlyphJustificationInfo
getJustificationInfo()
Returns the justification information for this object.

Methods inherited from class java.lang.Object

clone, equals, extends Object> getClass, finalize, hashCode, notify, notifyAll, toString, wait, wait, wait

Field Details

BOTTOM_ALIGNMENT

public static final int BOTTOM_ALIGNMENT
Field Value:
-2

CENTER_BASELINE

public static final int CENTER_BASELINE
Field Value:
1

HANGING_BASELINE

public static final int HANGING_BASELINE
Field Value:
2

ROMAN_BASELINE

public static final int ROMAN_BASELINE
Field Value:
0

TOP_ALIGNMENT

public static final int TOP_ALIGNMENT
Field Value:
-1

Constructor Details

GraphicAttribute

protected GraphicAttribute(int alignment)
Constructor.
Parameters:
alignment - - the alignment to use for the graphic

Method Details

draw

public abstract void draw(Graphics2D graphics,
                          float x,
                          float y)
Draws the graphic.
Parameters:
graphics - - the graphics configuration to use
x - - the x location
y - - the y location

getAdvance

public abstract float getAdvance()
Gets the distance from the origin of its graphic to the right side of the bounds of its graphic.
Returns:
the advance

getAlignment

public final int getAlignment()
Gets the alignment.
Returns:
the alignment

getAscent

public abstract float getAscent()
Gets the positive distance from the origin of its graphic to the top of bounds.
Returns:
the ascent

getBounds

public Rectangle2D getBounds()
Returns a Rectangle2D that encloses the rendered area. Default bounds is the rectangle (0, -ascent, advance, ascent+descent).
Returns:
the bounds of the rendered area

getDescent

public abstract float getDescent()
Gets the distance from the origin of its graphic to the bottom of the bounds.
Returns:
the descent

getJustificationInfo

public GlyphJustificationInfo getJustificationInfo()
Returns the justification information for this object.
Returns:
the justification information

GraphicAttribute.java Copyright (C) 2003 Free Software Foundation, Inc. This file is part of GNU Classpath. GNU Classpath is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. GNU Classpath is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with GNU Classpath; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. Linking this library statically or dynamically with other modules is making a combined work based on this library. Thus, the terms and conditions of the GNU General Public License cover the whole combination. As a special exception, the copyright holders of this library give you permission to link this library with independent modules to produce an executable, regardless of the license terms of these independent modules, and to copy and distribute the resulting executable under terms of your choice, provided that you also meet, for each linked independent module, the terms and conditions of the license of that module. An independent module is a module which is not derived from or based on this library. If you modify this library, you may extend this exception to your version of the library, but you are not obligated to do so. If you do not wish to do so, delete this exception statement from your version.