【Unityスクリプト解説】Text

Textの使い方やインスペクターでのパラメータ操作については↓の記事で解説しています。

<名前空間・型・継承>

・namespace
UnityEngine.UI

デフォルトの状態から使用するには
using UnityEngine.UI;
と記述するかUI.Textとする必要があります。

・型
class型

・継承
UI.MaskableGraphic

<変数>

alignByGeometry

グリフジオメトリを使用して文字の配置を行います。詳しくはこちらで解説しています。

型 bool型

○ 使い方
インスペクターで設定できるため、スクリプトから動的に変更することはあまりないかもしれません。

Text t = GetComponent<Text>();
t.alignByGeometry = true;

alignment

文字の揃え方です。

型 TextAnchor型

enum型です。

・UpperLeft 左上
・UpperCenter 上
・UpperRight 右上
・MiddleLeft 左
・MiddleCenter 真ん中
・MiddleRight 右
・LowerLeft 左下
・LowerCenter 下
・LowerRight 右下

○ 使い方
文字の揃え方を指定したい時に使用します。インスペクターから設定出来る為、スクリプトから動的に変更することはあまりないかもしれません。エディタ拡張で独自のテキストをワンボタンで生成したい時くらいでしょうか。

Text t = GetComponent<Text>();
t.alignment = TextAnchor.LowerRight;

cachedTextGenerator

テキストを描画する際に必要な情報を入れたTextGeneratorをキャッシュしておいたものです。

読み取り専用です。

型 TextGenerator型

○ 使い方
テキストを独自にカスタマイズしたい場合などに使用します。

Text t = GetComponent<Text>();
TextGenerator tg = t.cachedTextGenerator;

cachedTextGeneratorForLayout

テキストを描画する際のレイアウト情報をTextGeneratorをキャッシュしておいたものです。

読み取り専用です。

型 TextGenerator型

○ 使い方
テキストを独自にカスタマイズしたい場合などに使用します。

Text t = GetComponent<Text>();
TextGenerator tg = t.cachedTextGeneratorForLayout;

flexibleHeight

利用可能なスペースがある場合、このレイアウト要素が割り当てられる相対的な高さです。

レイアウトシステムによって変更されます。読み取り専用です。

型 float型

○ 使い方
主に、UIにの大きさや並び等を計算で出したい場合に使用します。

Text t = GetComponent<Text>();
float h = t.flexibleHeight;

flexibleWidth

利用可能なスペースがある場合、このレイアウト要素が割り当てられる相対的な幅です。

レイアウトシステムによって変更されます。読み取り専用です。

型 float型

○ 使い方
主に、UIにの大きさや並び等を計算で出したい場合に使用します。

Text t = GetComponent<Text>();
float h = t.flexibleWidth;

font

テキストに使用されるフォントです。

型 Font型

○ 使い方
フォントを変更したい場合に使用します。レイアウトや見た目の変更が設定出来るゲームなどで有効です。

Font f = Resources.Load<Font>("ロードするフォントの名前");
Text t = GetComponent<Text>();
t.font = f;

fontSize

フォントを描画する大きさです。

型 int型

○ 使い方
フォントサイズはゲーム内で極力統一しないとメモリを食うので、あまり動的に変更することはオススメできません。エディタ拡張などで使用するといいと思います。

Text t = GetComponent<Text>();
t.fontSize = 10;

fontStyle

テキストで使用されるフォント様式です。

型 FontStyle型

enum型です。

Normal 標準スタイルです。
Bold テキストを太字にします。
Italic テキストを斜め字にします。
BoldAndItalic テキストを太斜め字にします。

○ 使い方
フォント様式を変更したい場合に使用します。レイアウトや見た目の変更が設定出来るゲームなどで有効です。

Text t = GetComponent<Text>();
t.fontStyle = FontStyle.Bold;

horizontalOverflow

横方向にTextの幅(RectTransformのWidth)を超えた時どう表示するかです。

型 HorizontalWrapMode型

enum型です。

Wrap テキストが水平境界に到達したとき折り返します
Overflow テキストが水平境界を超えて表示されます

○ 使い方
インスペクターから設定出来る為、スクリプトから動的に変更することはあまりないと思います。

Text t = GetComponent<Text>();
t.horizontalOverflow = HorizontalWrapMode.Overflow;

layoutPriority

このコンポーネントのレイアウト優先度です。

レイアウトシステムに関連するコンポーネントが同じゲームオブジェクトに複数ついていた場合、この値が高いものが優先されます。

ですが、0 未満の値は無視されます。レイアウトシステムによって変更されます。読み取り専用です。

型 int型

○ 使い方
このコンポーネントの優先度を知りたい場合に使用します。

Text t = GetComponent<Text>();
int p = t.layoutPriority;

lineSpacing

行間の大きさです。

型 float型

○ 使い方
行間の大きさを調整したい時に使用します。

Text t = GetComponent<Text>();
t.lineSpacing = 1.1f;

mainTexture

このフォントを表示するために使っているフォントテクスチャです。

読み取り専用です。

型 Texture型

○ 使い方
フォントテクスチャをゲーム上で使用することはほぼないと思うので、主にデバッグ用になるかと思います。文字の使用状況を確認するのに使えます。

Text t = GetComponent<Text>();
Texture tex = t.mainTexture;

minHeight

このレイアウトに割当てられた最小の高さです。

レイアウトシステムによって変更されます。読み取り専用です。

型 float型

○ 使い方
主に、UIにの大きさや並び等を計算で出したい場合に使用します。

Text t = GetComponent<Text>();
float f = t.minHeight;

minWidth

このレイアウトに割当てられた最小の幅です。

レイアウトシステムによって変更されます。読み取り専用です。

型 float型

○ 使い方
主に、UIにの大きさや並び等を計算で出したい場合に使用します。

Text t = GetComponent<Text>();
float f = t.minWidth;

pixelsPerUnit

PixelsPerUnitはピクセルに対するゲーム上での大きさです。

UnitはUnity上の距離です。PixelsPerUnitが100で、テキストの大きさが100×100ピクセルの場合、Unity上での大きさは1×1のものと同じ大きさになります。Scaleの値を考慮に入れて計算されます。

ダイナミックフォントについては、値は Canvas の Scale Factor と同等です。ダイナミックフォントではない場合は、要求されたテキストサイズやフォントサイズから計算されます。

読取専用です。

型 float型

○ 使い方
主に、UIにの大きさや並び等を計算で出したい場合に使用します。

Text t = GetComponent<Text>();
float f = t.pixelsPerUnit;

preferredHeight

このTextに入っている文字列を実際に表示した際の高さです。

レイアウトシステムによって変更されます。読み取り専用です。

Horizontal OverflowがWrapになっている状態でTextのwidthが十分出ないと改行が入って1行分高くなってしまいます。

型 float型

○ 使い方
主に、UIにの大きさや並び等を計算で出したい場合に使用します。

Text t = GetComponent<Text>();
float f = t.preferredHeight;

preferredWidth

このTextに入っている文字列を実際に表示した際の幅です。

レイアウトシステムによって変更されます。読み取り専用です。

型 float型

○ 使い方
主に、UIにの大きさや並び等を計算で出したい場合に使用します。

Text t = GetComponent<Text>();
float f = t.preferredHeight;

resizeTextForBestFit

テキストの自動サイズ変更を有効にするかどうかです。

scaleではなくfontsizeが変わります。

型 bool型

○ 使い方
ベストフィットを有効にしたい場合に使用します。フォントサイズを変更するので、メモリ使用量に注意してください。

Text t = GetComponent<Text>();
t.resizeTextForBestFit = true;

resizeTextMaxSize

テキストの自動サイズ変更が有効な場合の最大のfontsizeです。

型 int型

○ 使い方
ベストフィットが有効な場合の最大の大きさを指定したい場合に使用します。インスペクターから設定出来る為、スクリプトから変える事はあまりないかもしれません。

Text t = GetComponent<Text>();
t.resizeTextMaxSize = 1;

resizeTextMinSize

テキストの自動サイズ変更が有効な場合の最小のfontsizeです。

型 int型

○ 使い方
ベストフィットが有効な場合の最大の大きさを指定したい場合に使用します。インスペクターから設定出来る為、スクリプトから変える事はあまりないかもしれません。

使い方
Text t = GetComponent<Text>();
t.resizeTextMinSize = 1;

supportRichText

リッチテキストを使用するかどうかです。

型 bool型

○ 使い方
インスペクターから設定出来る為、スクリプトから動的に変更することはあまりないかもしれません。エディタ拡張で独自のテキストをワンボタンで生成したい時くらいでしょうか。

Text t = GetComponent<Text>();
t.supportRichText = true;

text

このコンポーネントが表示する文字列です。

型 string型

○ 使い方
表示したいテキストを変更する際に使用します。

Text t = GetComponent<Text>();
t.text = "a";

verticalOverflow

縦方向にTextの高さ(RectTransformのHeight)を超えた時どう表示するかです。

型 VerticalWrapMode型

enum型です。

Truncate テキストが水平の端に到達したとき折り返されて生成されます
Overflow テキストが垂直の端に到達したときそのまま続けて生成されます

○ 使い方
インスペクターから設定出来る為、スクリプトから動的に変更することはあまりないと思います。

Text t = GetComponent<Text>();
t.verticalOverflow = VerticalWrapMode.Overflow;



<関数>

CalculateLayoutInputHorizontal

レイアウトシステムがminWidth、preferredWidth、flexibleWidthの照会をする前に呼び出します。

なし

戻り値(返り値)

なし

○ 使い方
レイアウトシステムが呼び出すので基本的に自分から呼び出す事はあまりないと思います。

Text t = GetComponent<Text>();
t.CalculateLayoutInputHorizontal();

CalculateLayoutInputVertical

レイアウトシステムがminHeight、preferredHeight、flexibleHeightの照会をする前に呼び出します。

なし

戻り値(返り値)

なし

○ 使い方
レイアウトシステムが呼び出すので基本的に自分から呼び出す事はあまりないと思います。

Text t = GetComponent<Text>();
t.CalculateLayoutInputVertical();

FontTextureChanged

フォントに関連づけられているテクスチャが変更されたときに [FontUpdateTracker] によって呼び出されます。

なし

戻り値(返り値)

なし

○ 使い方
FontUpdateTrackerが呼び出すので基本的に自分から呼び出す事はあまりないと思います。

Text t = GetComponent<Text>();
t.FontTextureChanged();

GetGenerationSettings

指定した範囲にこのテキストを生成する場合の設定を取得します。

1. テキストを表示するであろう範囲 : Vector2型

戻り値(返り値)

指定した範囲にこのテキストを生成する場合の設定 : TextGenerationSettings型

○ 使い方
テキストに独自の改変を入れたり、レイアウトの計算などに使用します。

Text t = GetComponent<Text>();
TextGenerationSettings ts = t.GetGenerationSettings();

<Protected関数>

OnDisable

このオブジェクトを破棄する。もしくは任意なクリーンアップのコードを実行したときに呼び出されます。

なし

戻り値(返り値)

なし

○ 使い方
自分から呼ぶ出すことはほぼ無いかと思います。継承先のスクリプトでオブジェクトがクリーンアップされた際の処理を書く事が主な使い道だと思います。

//Textを継承している場合
protected override void OnDisable()
{
 base.OnDisable();
 Debug.Log(“オブジェクトが破棄されました”);
}

<ゲーム業界で年収をあげたいなら>

もしあなたがゲーム業界で働いて、年収を上げたいのであればフリーランスになるという道もあります。↓の記事でフリーランスの案件情報サイト一覧をまとめてあるので、覗いてみるのも手だと思います。




タイトルとURLをコピーしました