java.lang.Object
java.awt.font.TextHitInfo
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
- 関連項目:
-
メソッドのサマリー
修飾子と型メソッド説明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
のcharIndex
からのdelta
によるオフセットであるTextHitInfo
を作成します。挿入ポイントの反対側に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()挿入インデックスを返します。 これは、文字のリーディング・エッジがヒットであった場合の文字インデックスであり、トレーリング・エッジがヒットであった場合の文字インデックスより大きくなります。- 戻り値:
- 挿入インデックス。
-
hashCode
public int hashCode()ハッシュ・コードを返します。 -
equals
public boolean equals(Object obj) 指定されたObject
がTextHitInfo
で、このTextHitInfo
と等しい場合、true
を返します。 -
equals
public boolean equals(TextHitInfo hitInfo) 指定されたTextHitInfo
が、このTextHitInfo
として同じcharIndex
とisLeadingEdge
を持つ場合、true
を返します。 これは、挿入オフセットが同じであることとは異なります。- パラメータ:
hitInfo
- 指定されたTextHitInfo
- 戻り値:
- 指定された
TextHitInfo
のcharIndex
およびisLeadingEdge
がこのTextHitInfo
と同じ場合はtrue
。
-
toString
public String toString()デバッグ専用にヒットを表すString
を返します。 -
leading
public static TextHitInfo leading(int charIndex) 指定されたcharIndex
の文字のリーディング・エッジでTextHitInfo
を作成します。- パラメータ:
charIndex
- 文字ヒットのインデックス- 戻り値:
- 指定された
charIndex
の文字のリーディング・エッジのTextHitInfo
。
-
trailing
public static TextHitInfo trailing(int charIndex) 指定されたcharIndex
の文字のトレーリング・エッジでヒットを作成します。- パラメータ:
charIndex
- 文字ヒットのインデックス- 戻り値:
- 指定された
charIndex
の文字のトレーリング・エッジのTextHitInfo
。
-
beforeOffset
public static TextHitInfo beforeOffset(int offset) 指定されたオフセットに、オフセットの前の文字に関連付けられたTextHitInfo
を作成します。- パラメータ:
offset
- オフセットの前の文字に関連付けられたオフセット- 戻り値:
- 指定されたオフセットの
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
のcharIndex
からのdelta
によるオフセットであるTextHitInfo
を作成します。 このTextHitInfo
は変更されません。- パラメータ:
delta
- このcharIndex
のオフセットを設定する値- 戻り値:
- この
TextHitInfo
のcharIndex
からdelta
だけオフセットされたcharIndex
を持つTextHitInfo
。
-