- java.lang.Object
-
- java.awt.font.GraphicAttribute
-
- Direct Known Subclasses:
- ImageGraphicAttribute, ShapeGraphicAttribute
public abstract class GraphicAttribute extends Object
This class is used with the CHAR_REPLACEMENT attribute.The
GraphicAttribute
class represents a graphic embedded in text. Clients subclass this class to implement their own char replacement graphics. Clients wishing to embed shapes and images in text need not subclass this class. Instead, clients can use theShapeGraphicAttribute
andImageGraphicAttribute
classes.Subclasses must ensure that their objects are immutable once they are constructed. Mutating a
GraphicAttribute
that is used in aTextLayout
results in undefined behavior from theTextLayout
.
-
-
Field Summary
Fields Modifier and Type Field and Description static int
BOTTOM_ALIGNMENT
Aligns bottom of graphic to bottom of line.static int
CENTER_BASELINE
Aligns origin of graphic to center baseline of line.static int
HANGING_BASELINE
Aligns origin of graphic to hanging baseline of line.static int
ROMAN_BASELINE
Aligns origin of graphic to roman baseline of line.static int
TOP_ALIGNMENT
Aligns top of graphic to top of line.
-
Constructor Summary
Constructors Modifier Constructor and Description protected
GraphicAttribute(int alignment)
Constructs aGraphicAttribute
.
-
Method Summary
Methods Modifier and Type Method and Description abstract void
draw(Graphics2D graphics, float x, float y)
Renders thisGraphicAttribute
at the specified location.abstract float
getAdvance()
Returns the advance of thisGraphicAttribute
.int
getAlignment()
Returns the alignment of thisGraphicAttribute
.abstract float
getAscent()
Returns the ascent of thisGraphicAttribute
.Rectangle2D
getBounds()
Returns aRectangle2D
that encloses all of the bits drawn by thisGraphicAttribute
relative to the rendering position.abstract float
getDescent()
Returns the descent of thisGraphicAttribute
.GlyphJustificationInfo
getJustificationInfo()
Returns the justification information for thisGraphicAttribute
.Shape
getOutline(AffineTransform tx)
Return aShape
that represents the region that thisGraphicAttribute
renders.
-
-
-
Field Detail
-
TOP_ALIGNMENT
public static final int TOP_ALIGNMENT
Aligns top of graphic to top of line.- See Also:
- Constant Field Values
-
BOTTOM_ALIGNMENT
public static final int BOTTOM_ALIGNMENT
Aligns bottom of graphic to bottom of line.- See Also:
- Constant Field Values
-
ROMAN_BASELINE
public static final int ROMAN_BASELINE
Aligns origin of graphic to roman baseline of line.- See Also:
- Constant Field Values
-
CENTER_BASELINE
public static final int CENTER_BASELINE
Aligns origin of graphic to center baseline of line.- See Also:
- Constant Field Values
-
HANGING_BASELINE
public static final int HANGING_BASELINE
Aligns origin of graphic to hanging baseline of line.- See Also:
- Constant Field Values
-
-
Constructor Detail
-
GraphicAttribute
protected GraphicAttribute(int alignment)
Constructs aGraphicAttribute
. Subclasses use this to define the alignment of the graphic.- Parameters:
alignment
- an int representing one of theGraphicAttribute
alignment fields- Throws:
IllegalArgumentException
- if alignment is not one of the five defined values.
-
-
Method Detail
-
getAscent
public abstract float getAscent()
Returns the ascent of thisGraphicAttribute
. A graphic can be rendered above its ascent.- Returns:
- the ascent of this
GraphicAttribute
. - See Also:
getBounds()
-
getDescent
public abstract float getDescent()
Returns the descent of thisGraphicAttribute
. A graphic can be rendered below its descent.- Returns:
- the descent of this
GraphicAttribute
. - See Also:
getBounds()
-
getAdvance
public abstract float getAdvance()
Returns the advance of thisGraphicAttribute
. TheGraphicAttribute
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- Returns:
- the advance of this
GraphicAttribute
. - See Also:
getBounds()
-
getBounds
public Rectangle2D getBounds()
Returns aRectangle2D
that encloses all of the bits drawn by thisGraphicAttribute
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).- Returns:
- a
Rectangle2D
that encloses all of the bits rendered by thisGraphicAttribute
.
-
getOutline
public Shape getOutline(AffineTransform tx)
Return aShape
that represents the region that thisGraphicAttribute
renders. This is used when aTextLayout
is requested to return the outline of the text. The (untransformed) shape must not extend outside the rectangular bounds returned bygetBounds
. The default implementation returns the rectangle returned bygetBounds()
, transformed by the providedAffineTransform
if present.- Parameters:
tx
- an optionalAffineTransform
to apply to the outline of thisGraphicAttribute
. This can be null.- Returns:
- a
Shape
representing this graphic attribute, suitable for stroking or filling. - Since:
- 1.6
-
draw
public abstract void draw(Graphics2D graphics, float x, float y)
Renders thisGraphicAttribute
at the specified location.- Parameters:
graphics
- theGraphics2D
into which to render the graphicx
- the user-space X coordinate where the graphic is renderedy
- the user-space Y coordinate where the graphic is rendered
-
getAlignment
public final int getAlignment()
Returns the alignment of thisGraphicAttribute
. Alignment can be to a particular baseline, or to the absolute top or bottom of a line.- Returns:
- the alignment of this
GraphicAttribute
.
-
getJustificationInfo
public GlyphJustificationInfo getJustificationInfo()
Returns the justification information for thisGraphicAttribute
. Subclasses can override this method to provide different justification information.- Returns:
- a
GlyphJustificationInfo
object that contains the justification information for thisGraphicAttribute
.
-
-
Nederlandse vertaling
U hebt gevraagd om deze site in het Nederlands te bezoeken. Voor nu wordt alleen de interface vertaald, maar nog niet alle inhoud.Als je me wilt helpen met vertalingen, is je bijdrage welkom. Het enige dat u hoeft te doen, is u op de site registreren en mij een bericht sturen waarin u wordt gevraagd om u toe te voegen aan de groep vertalers, zodat u de gewenste pagina's kunt vertalen. Een link onderaan elke vertaalde pagina geeft aan dat u de vertaler bent en heeft een link naar uw profiel.
Bij voorbaat dank.
Document heeft de 11/06/2005 gemaakt, de laatste keer de 04/03/2020 gewijzigd
Bron van het afgedrukte document:https://www.gaudry.be/nl/java-api-rf-java/awt/font/graphicattribute.html
De infobrol is een persoonlijke site waarvan de inhoud uitsluitend mijn verantwoordelijkheid is. De tekst is beschikbaar onder CreativeCommons-licentie (BY-NC-SA). Meer info op de gebruiksvoorwaarden en de auteur.
Referenties
Deze verwijzingen en links verwijzen naar documenten die geraadpleegd zijn tijdens het schrijven van deze pagina, of die aanvullende informatie kunnen geven, maar de auteurs van deze bronnen kunnen niet verantwoordelijk worden gehouden voor de inhoud van deze pagina.
De auteur Deze site is als enige verantwoordelijk voor de manier waarop de verschillende concepten, en de vrijheden die met de referentiewerken worden genomen, hier worden gepresenteerd. Vergeet niet dat u meerdere broninformatie moet doorgeven om het risico op fouten te verkleinen.