NumericShaper クラス
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
NumericShaper クラスは、ラテン 1 (ヨーロッパ) の数字を他の Unicode 10 進数に変換するために使用されます。
[Android.Runtime.Register("java/awt/font/NumericShaper", DoNotGenerateAcw=true)]
public sealed class NumericShaper : Java.Lang.Object, IDisposable, Java.IO.ISerializable
[<Android.Runtime.Register("java/awt/font/NumericShaper", DoNotGenerateAcw=true)>]
type NumericShaper = class
inherit Object
interface ISerializable
interface IJavaObject
interface IDisposable
interface IJavaPeerable
- 継承
- 属性
- 実装
注釈
NumericShaper クラスは、ラテン 1 (ヨーロッパ) の数字を他の Unicode 10 進数に変換するために使用されます。 このクラスのユーザーは、主に国の数字の図形を使用してデータを提示する必要があるが、ラテン 1 (ヨーロッパ) の数字を使用して内部的にデータを表現する方が便利なユーザーになります。 これにより、非推奨の数値図形セレクター文字 (U+206E) は解釈されません。
NumericShaperのインスタンスは、通常、TextAttribute#NUMERIC_SHAPING NUMERIC_SHAPING クラスのTextAttribute属性を持つテキストに属性として適用されます。 たとえば、このコード スニペットでは、アラビア語のコンテキストでヨーロッパの数字をアラビア語に整形する TextLayout が発生します:<br><blockquote>
Map map = new HashMap();
map.put(TextAttribute.NUMERIC_SHAPING,
NumericShaper.getContextualShaper(NumericShaper.ARABIC));
FontRenderContext frc = ...;
TextLayout layout = new TextLayout(text, map, frc);
layout.draw(g2d, x, y);
</blockquote><br> このコード スニペットはNumericShaperbr<>blockquote を示すように、<のインスタンスを使用して数値整形を明示的に実行することもできます。>
char[] text = ...;
// shape all EUROPEAN digits (except zero) to ARABIC digits
NumericShaper shaper = NumericShaper.getShaper(NumericShaper.ARABIC);
shaper.shape(text, start, count);
// shape European digits to ARABIC digits if preceding text is Arabic, or
// shape European digits to TAMIL digits if preceding text is Tamil, or
// leave European digits alone if there is no preceding text, or
// preceding text is neither Arabic nor Tamil
NumericShaper shaper =
NumericShaper.getContextualShaper(NumericShaper.ARABIC |
NumericShaper.TAMIL,
NumericShaper.EUROPEAN);
shaper.shape(text, start, count);
</blockquote>
<b>Bit mask-and enum-based Unicode ranges</b>
このクラスは、スクリプト固有の数字の Unicode 範囲を表す 2 つの異なるプログラミング インターフェイスをサポートしています。ビット マスクベースの数字 ( #ARABIC NumericShaper.ARABIC など) と列挙型ベースのインターフェイス ( NumericShaper.Range#ARABIC など)。 ORing ビット マスク ベースの定数で複数の範囲を指定できます。例: <blockquote>
NumericShaper.ARABIC | NumericShaper.TAMIL
</blockquote>またはSet定数を使用してNumericShaper.Rangeを作成する (例: <blockquote)>
EnumSet.of(NumericShaper.Scirpt.ARABIC, NumericShaper.Range.TAMIL)
</blockquote> 列挙型ベースの範囲は、ビット マスクベースのスーパー セットです。
2 つのインターフェイスが混在している場合 (シリアル化を含む)、Unicode 範囲の値は対応するインターフェイスにマップされ、そのようなマッピングが可能です ( NumericShaper.Range.ARABIC from/to NumericShaper.ARABICなど)。
NumericShaper.Range.BALINESEなど、適用できない範囲の値が指定されている場合、それらの範囲は無視されます。
<b>Decimal Digits Precedence</b>
Unicode 範囲には、10 進数のセットが複数含まれる場合があります。 同じ Unicode 範囲に対して複数の 10 進数セットが指定されている場合、次のようにセットの 1 つが優先されます。
<table border=1 cellspacing=3 cellpadding=0 summary="NumericShaper constants precedence."><tr><th class="TableHeadingColor">Unicode Range</th><th class="TableHeadingColor">NumericShaper Constants</th><th class="TableHeadingColor">Precedence</th></tr><tr><td rowspan="2">Arabic</td><td>NumericShaper#ARABIC NumericShaper.ARABIC<br>NumericShaper#EASTERN_ARABIC NumericShaper.EASTERN_ARABIC</td><td>NumericShaper#EASTERN_ARABIC NumericShaper.EASTERN_ARABIC</td></tr><tr><td>NumericShaper.Range#ARABIC<br>NumericShaper.Range#EASTERN_ARABIC</td><td>NumericShaper.Range#EASTERN_ARABIC</td></tr><tr><td>Tai Tham</td><td>NumericShaper.Range#TAI_THAM_HORA<br>NumericShaper.Range#TAI_THAM_THAM</td><td>NumericShaper.Range#TAI_THAM_THAM</td></tr></table>
1.4 で追加されました。
このページの一部は、によって作成および共有され、に記載されている条件に従って使用される作業に基づく変更です。
フィールド
| 名前 | 説明 |
|---|---|
| AllRanges |
古い.
完全なコンテキスト 整形のために、すべての範囲を識別します。 |
| Arabic |
古い.
ARABIC の範囲と 10 進数の底を識別します。 |
| Bengali |
古い.
ベンガル語の範囲と 10 進数の底を識別します。 |
| Devanagari |
古い.
DEVANAGARI の範囲と 10 進数の底を識別します。 |
| EasternArabic |
古い.
ARABIC 範囲と 10 進数の底ARABIC_EXTENDED識別します。 |
| Ethiopic |
古い.
ETHIOPIC の範囲と 10 進ベースを識別します。 |
| European |
古い.
ラテン 1 (ヨーロッパ) と拡張範囲、およびラテン 1 (ヨーロッパ) の 10 進数の底を識別します。 |
| Gujarati |
古い.
GUJARATI 範囲と 10 進ベースを識別します。 |
| Gurmukhi |
古い.
GURMUKHI 範囲と 10 進数の底を識別します。 |
| Kannada |
古い.
カンナダの範囲と 10 進数の底を識別します。 |
| Khmer |
古い.
KHMER の範囲と 10 進数の底を識別します。 |
| Lao |
古い.
LAO の範囲と 10 進数の底を識別します。 |
| Malayalam |
古い.
マラヤーラムの範囲と 10 進数の底を識別します。 |
| Mongolian |
古い.
モンゴル語の範囲と 10 進数の底を識別します。 |
| Myanmar |
古い.
ミャンマーの範囲と 10 進数の底を識別します。 |
| Oriya |
古い.
ORIYA の範囲と 10 進数の底を識別します。 |
| Tamil |
古い.
TAMIL 範囲と 10 進数の底を識別します。 |
| Telugu |
古い.
TELUGU 範囲と 10 進数の底を識別します。 |
| Thai |
古い.
THAI の範囲と 10 進数の底を識別します。 |
| Tibetan |
古い.
10 進ベースと 10 進数の範囲を識別します。 |
プロパティ
| 名前 | 説明 |
|---|---|
| Class |
この |
| Handle |
基になる Android インスタンスへのハンドル。 (継承元 Object) |
| IsContextual |
このシェーパー図形をコンテキストに応じて示す |
| JniIdentityHashCode |
相互運用ランタイムによってこのJava ピアに割り当てられた ID ハッシュ コードを取得します。 (継承元 Object) |
| JniManagedPeerState |
|
| JniPeerMembers |
このJava ピアのメンバーを呼び出すために使用される JNI メタデータを取得します。 |
| PeerReference |
このJava ピアの JNI オブジェクト参照を取得します。 (継承元 Object) |
| Ranges |
整形されるすべての範囲の値を一緒に OR する |
| RangeSet |
整形されるこの |
| ThresholdClass |
この API は Android 用 Mono インフラストラクチャをサポートしており、コードから直接使用するためのものではありません。 (継承元 Object) |
| ThresholdType |
この API は Android 用 Mono インフラストラクチャをサポートしており、コードから直接使用するためのものではありません。 (継承元 Object) |
メソッド
| 名前 | 説明 |
|---|---|
| Clone() |
このオブジェクトのコピーを作成して返します。 (継承元 Object) |
| Construct(JniObjectReference, JniObjectReferenceOptions) |
|
| Dispose() |
このJava ピアによって保持されているリソースを解放します。 (継承元 Object) |
| Dispose(Boolean) |
このJava ピアによって保持されているリソースを解放します。 (継承元 Object) |
| DisposeUnlessReferenced() |
|
| Equals(Object) |
|
| Equals(Object) |
他のオブジェクトがこのオブジェクトと "等しい" かどうかを示します。 (継承元 Object) |
| GetContextualShaper(Ranges, Int32) |
指定された Unicode 範囲のコンテキスト シェーパーを返します。 |
| GetContextualShaper(Ranges) |
指定された Unicode 範囲のコンテキスト シェーパーを返します。 |
| GetHashCode() |
オブジェクトのハッシュ コード値を返します。 (継承元 Object) |
| GetShaper(Ranges) |
指定された Unicode 範囲のシェーパーを返します。 |
| JavaFinalize() |
オブジェクトへの参照がなくなったとガベージ コレクションによって判断されたときに、オブジェクトのガベージ コレクターによって呼び出されます。 (継承元 Object) |
| Notify() |
このオブジェクトのモニターで待機している 1 つのスレッドを起動します。 (継承元 Object) |
| NotifyAll() |
このオブジェクトのモニターで待機しているすべてのスレッドを起動します。 (継承元 Object) |
| SetHandle(IntPtr, JniHandleOwnership) |
Handle プロパティを設定します。 (継承元 Object) |
| SetPeerReference(JniObjectReference, JniObjectReferenceOptions) |
|
| Shape(Char[], Int32, Int32, Int32) |
指定されたコンテキストを使用して、開始と開始 + count の間で発生するテキスト内の数字を変換します。 |
| Shape(Char[], Int32, Int32, NumericShaper+Range) |
開始と開始 + count の間に出現するテキストの数字を変換します。 |
| Shape(Char[], Int32, Int32) |
開始と開始 + count の間に出現するテキストの数字を変換します。 |
| ToArray<T>() |
このJava配列ラッパーからマネージド配列を作成します。 (継承元 Object) |
| ToString() |
オブジェクトの文字列形式を返します。 (継承元 Object) |
| UnregisterFromRuntime() |
相互運用ランタイムからこのJava ピアの登録を解除します。 (継承元 Object) |
| Wait() |
現在のスレッドが起動するまで待機します。通常は、 <em>notified</em> または <em>interrupted</em>。 (継承元 Object) |
| Wait(Int64, Int32) |
現在のスレッドは、通常、 <em>notified</em> または <em>interrupted</em>、または一定のリアルタイムが経過するまで、起動されるまで待機します。 (継承元 Object) |
| Wait(Int64) |
現在のスレッドは、通常、 <em>notified</em> または <em>interrupted</em>、または一定のリアルタイムが経過するまで、起動されるまで待機します。 (継承元 Object) |
明示的なインターフェイスの実装
| 名前 | 説明 |
|---|---|
| IJavaPeerable.Disposed() |
|
| IJavaPeerable.Finalized() |
|
| IJavaPeerable.JniObjectReferenceControlBlock |
|
| IJavaPeerable.SetJniIdentityHashCode(Int32) |
|
| IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates) |
|
| IJavaPeerable.SetPeerReference(JniObjectReference) |
|
| IJavaPeerable.UnregisterFromRuntime() |
|
拡張メソッド
| 名前 | 説明 |
|---|---|
| GetJniTypeName(IJavaPeerable) |
インスタンス |
| JavaAs<TResult>(IJavaPeerable) |
|
| JavaCast<TResult>(IJavaObject) |
Android ランタイムチェック型変換を実行します。 |
| JavaCast<TResult>(IJavaObject) |
|
| TryJavaCast<TResult>(IJavaPeerable, TResult) |
|