java.lang.Object
java.awt.font.TextHitInfo
TextHitInfo
类表示文本模型中的字符位置,以及偏见,或角色的“侧面”。偏差是 leading(左边缘,对于从左到右的字符)或 trailing(右边缘,对于从左到右的字符)。 TextHitInfo
的实例用于指定文本中的插入符号和插入位置。
例如,考虑文本“abc”。 TextHitInfo.trailing(1) 对应于文本中“b”的右侧。
TextHitInfo
主要由 TextLayout
和 TextLayout
的客户使用。 TextLayout
的客户端查询 TextHitInfo
实例的插入偏移量,新文本被插入到文本模型中。如果偏置是前导,则插入偏移量等于TextHitInfo
中的字符位置,如果偏置是尾随,则插入偏移量等于字符位置。 TextHitInfo.trailing(1) 的插入偏移量为 2。
有时构造一个 TextHitInfo
与现有插入偏移量相同但位于相反字符上会很方便。 getOtherHit
方法构造一个新的 TextHitInfo
,其插入偏移量与现有插入偏移量相同,并命中插入偏移量另一侧的字符。在 trailing(1) 上调用 getOtherHit
将返回 leading(2)。一般来说,getOtherHit
for trailing(n) 返回 leading(n+1) 而 getOtherHit
for leading(n) 返回 trailing(n-1)。
Example :
将图形点转换为文本模型中的插入点
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
- 参见:
-
方法总结
修饰符和类型方法描述static TextHitInfo
afterOffset
(int offset) 在指定偏移处创建一个TextHitInfo
,与偏移后的字符关联。static TextHitInfo
beforeOffset
(int offset) 在指定偏移处创建一个TextHitInfo
,与偏移前的字符相关联。boolean
equals
(TextHitInfo hitInfo) 如果指定的TextHitInfo
具有与此TextHitInfo
相同的charIndex
和isLeadingEdge
,则返回true
。boolean
如果指定的Object
是一个TextHitInfo
并且等于这个TextHitInfo
,则返回true
。int
返回字符命中的索引。int
返回插入索引。getOffsetHit
(int delta) 创建一个TextHitInfo
,其字符索引从这个TextHitInfo
的charIndex
偏移delta
。在插入点的另一侧创建一个TextHitInfo
。int
hashCode()
返回哈希码。boolean
如果字符的前缘被击中,则返回true
。static TextHitInfo
leading
(int charIndex) 在指定charIndex
字符的前沿创建一个TextHitInfo
。toString()
返回一个String
表示仅供调试使用的命中。static TextHitInfo
trailing
(int charIndex) 在指定的charIndex
字符的后缘创建命中。
-
方法详情
-
getCharIndex
public int getCharIndex()返回字符命中的索引。- 返回:
- 字符命中的索引。
-
isLeadingEdge
public boolean isLeadingEdge()如果字符的前缘被击中,则返回true
。- 返回:
true
如果字符的前缘被击中;false
否则。
-
getInsertionIndex
public int getInsertionIndex()返回插入索引。如果字符的前缘被击中,这是字符索引,如果后缘被击中,则它比字符索引大 1。- 返回:
- 插入索引。
-
hashCode
public int hashCode()返回哈希码。 -
equals
如果指定的Object
是一个TextHitInfo
并且等于这个TextHitInfo
,则返回true
。 -
equals
如果指定的TextHitInfo
具有与此TextHitInfo
相同的charIndex
和isLeadingEdge
,则返回true
。这与具有相同的插入偏移量不同。- 参数:
hitInfo
- 一个指定的TextHitInfo
- 返回:
true
如果指定的TextHitInfo
具有与此TextHitInfo
相同的charIndex
和isLeadingEdge
。
-
toString
返回一个String
表示仅供调试使用的命中。 -
leading
在指定charIndex
字符的前沿创建一个TextHitInfo
。- 参数:
charIndex
- 命中的字符索引- 返回:
TextHitInfo
在指定charIndex
字符的前沿。
-
trailing
在指定的charIndex
字符的后缘创建命中。- 参数:
charIndex
- 命中的字符索引- 返回:
TextHitInfo
在指定charIndex
字符的后缘。
-
beforeOffset
在指定偏移处创建一个TextHitInfo
,与偏移前的字符相关联。- 参数:
offset
- 与偏移量之前的字符关联的偏移量- 返回:
-
指定偏移处的
TextHitInfo
。
-
afterOffset
在指定偏移处创建一个TextHitInfo
,与偏移后的字符关联。- 参数:
offset
- 与偏移量之后的字符关联的偏移量- 返回:
-
指定偏移处的
TextHitInfo
。
-
getOtherHit
在插入点的另一侧创建一个TextHitInfo
。这个TextHitInfo
保持不变。- 返回:
-
插入点另一侧的
TextHitInfo
。
-
getOffsetHit
创建一个TextHitInfo
,其字符索引从这个TextHitInfo
的charIndex
偏移delta
。这个TextHitInfo
保持不变。- 参数:
delta
- 抵消此charIndex
的值- 返回:
-
一个
TextHitInfo
的charIndex
从这个TextHitInfo
的charIndex
偏移了delta
。
-