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, 2013, Oracle and/or its affiliates. All rights reserved.