public final class TextHitInfo extends Object
TextHitInfo
クラスは、テキスト・モデルの文字の位置、バイアス、または「サイド」を表します。 バイアスはリーディング (左から右の文字の場合は左端)またはトレーリング (左から右の文字の場合は右端)のどちらかです。 TextHitInfo
のインスタンスは、テキスト内のキャレットおよび挿入位置の指定に使われます。
たとえば、「abc」というテキストがあるとします。 TextHitInfo.trailing(1)はテキストの「b」の右側に対応します。
TextHitInfo
は主にTextLayout
、およびTextLayout
のクライアントによって使われます。 TextLayout
のクライアントはTextHitInfo
インスタンスに、新しいテキストをテキスト・モデルに挿入する挿入オフセットを問い合わせます。 挿入オフセットは、バイアスがリーディングである場合にTextHitInfo
の文字の位置に等しくなり、バイアスがトレーリングである場合は、1文字後ろになります。 TextHitInfo.trailing(1)の挿入オフセットは2です。
既存のものと同じ挿入オフセットで、ただし反対の文字でTextHitInfo
を構築すると便利な場合があります。 getOtherHit
メソッドは既存のものと同じ挿入オフセットで、挿入オフセットの反対側の文字のヒットで新しいTextHitInfo
を構築します。 trailing(1)でgetOtherHit
を呼び出すと、leading(2)が返されます。 一般に、trailing(n)に対するgetOtherHit
はleading(n+1)を返し、leading(n)に対するgetOtherHit
はtrailing(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(Object obj) |
指定された
Object がTextHitInfo で、このTextHitInfo と等しい場合、true を返します。 |
boolean |
equals(TextHitInfo hitInfo) |
指定された
TextHitInfo が、このTextHitInfo として同じcharIndex とisLeadingEdge を持つ場合、true を返します。 |
int |
getCharIndex() |
文字ヒットのインデックスを返します。
|
int |
getInsertionIndex() |
挿入インデックスを返します。
|
TextHitInfo |
getOffsetHit(int delta) |
文字インデックスが、この
TextHitInfo のcharIndex からのdelta によるオフセットであるTextHitInfo を作成します。 |
TextHitInfo |
getOtherHit() |
挿入ポイントの反対側に
TextHitInfo を作成します。 |
int |
hashCode() |
ハッシュ・コードを返します。
|
boolean |
isLeadingEdge() |
文字のリーディング・エッジがヒットであった場合に
true を返します。 |
static TextHitInfo |
leading(int charIndex) |
指定された
charIndex の文字のリーディング・エッジでTextHitInfo を作成します。 |
String |
toString() |
デバッグ専用にヒットを表す
String を返します。 |
static TextHitInfo |
trailing(int charIndex) |
指定された
charIndex の文字のトレーリング・エッジでヒットを作成します。 |
public int getCharIndex()
public boolean isLeadingEdge()
true
を返します。true
、そうでない場合はfalse
。public int getInsertionIndex()
public int hashCode()
hashCode
、クラスObject
TextHitInfo
のハッシュ・コード。これはこのTextHitInfo
のcharIndex
でもある。Object.equals(java.lang.Object)
, System.identityHashCode(java.lang.Object)
public boolean equals(Object obj)
Object
がTextHitInfo
で、このTextHitInfo
と等しい場合、true
を返します。equals
、クラスObject
obj
- 等しいかどうかが判定されるObject
Object
がこのTextHitInfo
の場合はtrue
、それ以外の場合はfalse
。Object.hashCode()
、HashMap
public boolean equals(TextHitInfo hitInfo)
TextHitInfo
が、このTextHitInfo
として同じcharIndex
とisLeadingEdge
を持つ場合、true
を返します。 これは、挿入オフセットが同じであることとは異なります。 hitInfo
- 指定されたTextHitInfo
TextHitInfo
のcharIndex
およびisLeadingEdge
がこのTextHitInfo
と同じ場合はtrue
。public String toString()
String
を返します。public static TextHitInfo leading(int charIndex)
charIndex
の文字のリーディング・エッジでTextHitInfo
を作成します。charIndex
- 文字ヒットのインデックスcharIndex
の文字のリーディング・エッジのTextHitInfo
。public static TextHitInfo trailing(int charIndex)
charIndex
の文字のトレーリング・エッジでヒットを作成します。charIndex
- 文字ヒットのインデックスcharIndex
の文字のトレーリング・エッジのTextHitInfo
。public static TextHitInfo beforeOffset(int offset)
TextHitInfo
を作成します。offset
- オフセットの前の文字に関連付けられたオフセットTextHitInfo
。public static TextHitInfo afterOffset(int offset)
TextHitInfo
を作成します。offset
- オフセットの後ろの文字に関連付けられたオフセットTextHitInfo
。public TextHitInfo getOtherHit()
TextHitInfo
を作成します。 このTextHitInfo
は変更されません。 TextHitInfo
。public TextHitInfo getOffsetHit(int delta)
TextHitInfo
のcharIndex
からのdelta
によるオフセットであるTextHitInfo
を作成します。 このTextHitInfo
は変更されません。 delta
- このcharIndex
のオフセットを設定する値TextHitInfo
のcharIndex
からdelta
だけオフセットされたcharIndex
を持つTextHitInfo
。 バグまたは機能を送信
詳細なAPIリファレンスおよび開発者ドキュメントについては、Java SEのドキュメントを参照してください。 そのドキュメントには、概念的な概要、用語の定義、回避方法、有効なコード例などの、開発者を対象にしたより詳細な説明が含まれています。
Copyright © 1993, 2025, Oracle and/or its affiliates. All rights reserved. Use is subject to license terms. Documentation Redistribution Policyも参照してください。