Methods Summary |
---|
public abstract void | draw(java.awt.Graphics2D graphics, float x, float y)Renders this GraphicAttribute at the specified
location.
|
public abstract float | getAdvance()Returns the advance of this GraphicAttribute . The
GraphicAttribute object's advance is the distance
from the point at which the graphic is rendered and the point where
the next character or graphic is rendered. A graphic can be
rendered beyond its advance
|
public final int | getAlignment()Returns the alignment of this GraphicAttribute .
Alignment can be to a particular baseline, or to the absolute top
or bottom of a line.
return fAlignment;
|
public abstract float | getAscent()Returns the ascent of this GraphicAttribute . A
graphic can be rendered above its ascent.
|
public java.awt.geom.Rectangle2D | getBounds()Returns a {@link Rectangle2D} that encloses all of the
bits drawn by this GraphicAttribute relative to the
rendering position.
A graphic may be rendered beyond its origin, ascent, descent,
or advance; but if it is, this method's implementation must
indicate where the graphic is rendered.
Default bounds is the rectangle (0, -ascent, advance, ascent+descent).
float ascent = getAscent();
return new Rectangle2D.Float(0, -ascent,
getAdvance(), ascent+getDescent());
|
public abstract float | getDescent()Returns the descent of this GraphicAttribute . A
graphic can be rendered below its descent.
|
public java.awt.font.GlyphJustificationInfo | getJustificationInfo()Returns the justification information for this
GraphicAttribute . Subclasses
can override this method to provide different justification
information.
// should we cache this?
float advance = getAdvance();
return new GlyphJustificationInfo(
advance, // weight
false, // growAbsorb
2, // growPriority
advance/3, // growLeftLimit
advance/3, // growRightLimit
false, // shrinkAbsorb
1, // shrinkPriority
0, // shrinkLeftLimit
0); // shrinkRightLimit
|
public java.awt.Shape | getOutline(java.awt.geom.AffineTransform tx)Return a {@link java.awt.Shape} that represents the region that
this GraphicAttribute renders. This is used when a
{@link TextLayout} is requested to return the outline of the text.
The (untransformed) shape must not extend outside the rectangular
bounds returned by getBounds .
The default implementation returns the rectangle returned by
{@link #getBounds}, transformed by the provided {@link AffineTransform}
if present.
Shape b = getBounds();
if (tx != null) {
b = tx.createTransformedShape(b);
}
return b;
|