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、クラスObjectTextHitInfoのハッシュ・コード。これはこのTextHitInfoのcharIndexでもある。Object.equals(java.lang.Object), System.identityHashCode(java.lang.Object)public boolean equals(Object obj)
ObjectがTextHitInfoで、このTextHitInfoと等しい場合、trueを返します。equals、クラスObjectobj - 等しいかどうかが判定されるObjectObjectがこのTextHitInfoの場合はtrue、それ以外の場合はfalse。Object.hashCode()、HashMappublic boolean equals(TextHitInfo hitInfo)
TextHitInfoが、このTextHitInfoとして同じcharIndexとisLeadingEdgeを持つ場合、trueを返します。 これは、挿入オフセットが同じであることとは異なります。 hitInfo - 指定されたTextHitInfoTextHitInfoの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も参照してください。