- java.lang.Object
-
- java.awt.font.TextHitInfo
-
public final class TextHitInfo extends Object
TextHitInfo
类表示文本模型中的字符位置,以及字符的偏差或“侧面”。 偏差要么是前导 (左边缘,左边到右边的字符),要么是尾随 (右边缘,从左到右的字符)。 实例TextHitInfo
用于指定文本中的插入符号和插入位置。例如,考虑文本“abc”。 TextHitInfo.trailing(1)对应于文本中“b”的右侧。
TextHitInfo
主要由TextLayout
和TextLayout的客户TextLayout
。 客户端TextLayout
查询插入偏移的TextHitInfo
实例,其中新文本插入到文本模型中。 如果偏差超前,则插入偏移量等于TextHitInfo
的字符位置;如果偏差为尾随,则插入偏移量等于一个字符。 TextHitInfo.trailing(1)的插入偏移量为2。有时,构造具有与现有插入偏移相同的插入偏移的
TextHitInfo
是方便的,但是在相反的字符上。getOtherHit
方法使用与现有插入偏移相同的插入偏移构造新的TextHitInfo
并在插入偏移的另一侧上的字符上进行命中。 在尾随(1)上调用getOtherHit
将返回前导(2)。 通常,尾随(n)的getOtherHit
返回前导(n + 1)和前导(n)的getOtherHit
返回尾随(n-1)。示例 :
将图形点转换为文本模型中的插入点
TextLayout layout = ...; Point2D.Float hitPoint = ...; TextHitInfo hitInfo = layout.hitTestChar(hitPoint.x, hitPoint.y); int insPoint = hitInfo.getInsertionIndex(); // insPoint is relative to layout; may need to adjust for use // in a text model
- 另请参见:
-
TextLayout
-
-
方法摘要
所有方法 静态方法 实例方法 具体的方法 变量和类型 方法 描述 static TextHitInfo
afterOffset(int offset)
在指定的偏移处创建一个TextHitInfo
,与偏移后的字符相关联。static TextHitInfo
beforeOffset(int offset)
在指定的偏移处创建一个TextHitInfo
,与偏移前的字符相关联。boolean
equals(TextHitInfo hitInfo)
返回true
如果指定TextHitInfo
具有相同charIndex
和isLeadingEdge
,因为这TextHitInfo
。boolean
equals(Object obj)
返回true
如果指定Object
是TextHitInfo
,等于这个TextHitInfo
。int
getCharIndex()
返回字符匹配的索引。int
getInsertionIndex()
返回插入索引。TextHitInfo
getOffsetHit(int delta)
创建TextHitInfo
其字符索引由偏移delta
从charIndex
此的TextHitInfo
。TextHitInfo
getOtherHit()
在插入点的另一侧创建一个TextHitInfo
。int
hashCode()
返回哈希码。boolean
isLeadingEdge()
如果角色的前缘被击中,则返回true
。static TextHitInfo
leading(int charIndex)
创建TextHitInfo
上的字符在指定的前沿charIndex
。String
toString()
返回String
表示仅用于调试的命中。static TextHitInfo
trailing(int charIndex)
在指定的charIndex
处创建角色后缘的charIndex
。
-
-
-
方法详细信息
-
getCharIndex
public int getCharIndex()
返回字符匹配的索引。- 结果
- 命中的字符索引。
-
isLeadingEdge
public boolean isLeadingEdge()
如果角色的前缘被击中,则返回true
。- 结果
-
true
如果角色的前缘被击中; 否则为false
。
-
getInsertionIndex
public int getInsertionIndex()
返回插入索引。 如果角色的前沿被击中,则这是字符索引,如果后端被击中,则大于字符索引。- 结果
- 插入索引。
-
hashCode
public int hashCode()
返回哈希码。- 重写:
-
hashCode
在类Object
- 结果
-
TextHitInfo
的哈希码,也就是charIndex
的TextHitInfo
。 - 另请参见:
-
Object.equals(java.lang.Object)
,System.identityHashCode(java.lang.Object)
-
equals
public boolean equals(Object obj)
返回true
如果指定Object
是TextHitInfo
,等于这个TextHitInfo
。- 重写:
-
equals
类别Object
- 参数
-
obj
- 测试相等性的Object
- 结果
-
true
如果指定的Object
于此TextHitInfo
; 否则为false
。 - 另请参见:
-
Object.hashCode()
,HashMap
-
equals
public boolean equals(TextHitInfo hitInfo)
返回true
如果指定TextHitInfo
具有相同charIndex
和isLeadingEdge
,因为这TextHitInfo
。 这与具有相同的插入偏移量不同。- 参数
-
hitInfo
- 指定的TextHitInfo
- 结果
-
true
如果指定TextHitInfo
具有相同charIndex
和isLeadingEdge
,因为这TextHitInfo
。
-
toString
public String toString()
返回String
表示仅用于调试的命中。
-
leading
public static TextHitInfo leading(int charIndex)
创建TextHitInfo
上的字符在指定的前沿charIndex
。- 参数
-
charIndex
- 命中的字符的索引 - 结果
-
a
TextHitInfo
位于指定的charIndex
字符的charIndex
。
-
trailing
public static TextHitInfo trailing(int charIndex)
在指定的charIndex
角色的后缘创建一个charIndex
。- 参数
-
charIndex
- 命中的字符的索引 - 结果
-
一个
TextHitInfo
上的字符的在指定的后缘charIndex
。
-
beforeOffset
public static TextHitInfo beforeOffset(int offset)
在指定的偏移处创建一个TextHitInfo
,与偏移前的字符相关联。- 参数
-
offset
- 与偏移前字符关联的偏移量 - 结果
-
a指定偏移量的
TextHitInfo
。
-
afterOffset
public static TextHitInfo afterOffset(int offset)
在指定的偏移处创建一个TextHitInfo
,与偏移后的字符相关联。- 参数
-
offset
- 与偏移后的字符关联的偏移量 - 结果
-
指定偏移处的
TextHitInfo
。
-
getOtherHit
public TextHitInfo getOtherHit()
在插入点的另一侧创建一个TextHitInfo
。TextHitInfo
保持不变。- 结果
-
插入点另一侧的
TextHitInfo
。
-
getOffsetHit
public TextHitInfo getOffsetHit(int delta)
创建TextHitInfo
其字符索引由偏移delta
从charIndex
此的TextHitInfo
。TextHitInfo
保持不变。- 参数
-
delta
- 抵消此charIndex
的值 - 结果
-
一个
TextHitInfo
,其charIndex
被抵消delta
从charIndex
如此TextHitInfo
。
-
-