public abstract class GraphicAttribute extends Object
GraphicAttribute
类表示嵌入文本的图形。 客户端子类实现自己的char替换图形。 希望在文本中嵌入形状和图像的客户不需要对这个类进行子类化。 相反,客户可以使用ShapeGraphicAttribute
和ImageGraphicAttribute
类。
子类必须确保它们的对象在构造后是不可变的。 变异一个GraphicAttribute
是在使用TextLayout
所导致从不确定的行为TextLayout
。
Modifier and Type | Field and Description |
---|---|
static int |
BOTTOM_ALIGNMENT
将图形底部对齐到底部。
|
static int |
CENTER_BASELINE
将图形的起点与线的中心基线对齐。
|
static int |
HANGING_BASELINE
将图形的起点与线的垂直基线对齐。
|
static int |
ROMAN_BASELINE
将图形的起点与罗马线的基线对齐。
|
static int |
TOP_ALIGNMENT
将图形顶部与顶部对齐。
|
Modifier | Constructor and Description |
---|---|
protected |
GraphicAttribute(int alignment)
构造一个
GraphicAttribute 。
|
Modifier and Type | Method and Description |
---|---|
abstract void |
draw(Graphics2D graphics, float x, float y)
在指定的位置渲染此
GraphicAttribute 。
|
abstract float |
getAdvance()
返回此
GraphicAttribute 。
|
int |
getAlignment()
返回此GraphicAttribute的
GraphicAttribute 。
|
abstract float |
getAscent()
返回此
GraphicAttribute 的上升。
|
Rectangle2D |
getBounds()
返回一个 Rectangle2D ,其中包含了此GraphicAttribute 相对于渲染位置绘制的所有位。
|
abstract float |
getDescent()
返回此
GraphicAttribute 的下降。
|
GlyphJustificationInfo |
getJustificationInfo()
返回此
GraphicAttribute 。
|
Shape |
getOutline(AffineTransform tx)
返回一个代表 GraphicAttribute 呈现的区域的GraphicAttribute 。
|
public static final int TOP_ALIGNMENT
public static final int BOTTOM_ALIGNMENT
public static final int ROMAN_BASELINE
public static final int CENTER_BASELINE
public static final int HANGING_BASELINE
protected GraphicAttribute(int alignment)
GraphicAttribute
。
子类使用它来定义图形的对齐方式。
alignment
- 表示
GraphicAttribute
对齐字段之一的int
IllegalArgumentException
- 如果对齐不是五个定义值之一。
public abstract float getAscent()
GraphicAttribute
的上升。
图形可以在其上方呈现。
GraphicAttribute
的上升。
getBounds()
public abstract float getDescent()
GraphicAttribute
的下降。
图形可以在其下降之下呈现。
GraphicAttribute
的下降。
getBounds()
public abstract float getAdvance()
GraphicAttribute
。
GraphicAttribute
对象的提前是从图形渲染点到下一个字符或图形呈现的点的距离。
一个图形可以超越它的进步
GraphicAttribute
。
getBounds()
public Rectangle2D getBounds()
Rectangle2D
,其中包含了此GraphicAttribute
相对于渲染位置绘制的所有位。
图形可能会超出其起源,上升,下降或提前;
但是如果是,则该方法的实现必须指示图形的呈现位置。
默认边界是矩形(0,-ascent,advance,ascent + descent)。
Rectangle2D
,其中包含了由此
GraphicAttribute
呈现的所有位。
public Shape getOutline(AffineTransform tx)
GraphicAttribute
呈现的区域的GraphicAttribute
。
当需要TextLayout
返回文本大纲时使用。
的(未转化的)形状不能由返回的矩形边界之外延伸getBounds
。
默认实现返回由getBounds()
返回的矩形 ,由提供的AffineTransform
(如果存在)转换。
tx
- 一个可选的AffineTransform
适用于这个GraphicAttribute
的大纲。
这可以是null。
Shape
代表这种图形属性,适合于抚摸或填充。
public abstract void draw(Graphics2D graphics, float x, float y)
GraphicAttribute
。
graphics
- 用于呈现图形的Graphics2D
x
- 呈现图形的用户空间X坐标
y
- 呈现图形的用户空间Y坐标
public final int getAlignment()
GraphicAttribute
。
对齐可以是一个特定的基线,也可以是一行的绝对顶部或底部。
GraphicAttribute
。
public GlyphJustificationInfo getJustificationInfo()
GraphicAttribute
。
子类可以覆盖此方法以提供不同的对齐信息。
GlyphJustificationInfo
对象,其中包含此GraphicAttribute
。