この記事でのバージョン
Unity 6000.0.34f1
はじめに
UnityのTMP(TextMesh Pro)はタグを使って色々な装飾が出来ます。
![]() |
そしてtextを参照すると、タグ付きの文字列が取得できます。
//タグ付きの文字列を取得 var text = _tmp.text;
しかし、場合によってはタグがない状態の文字列、
つまり表示されたままのテキストを取得したい場合もありますが、
そんな時はGetParsedTextというメソッドが便利です。
//タグが付いてない文字列を取得 var text = _tmp.GetParsedText();
例えば、タグ付きの文字列を設定したTextMeshProの
textとGetParsedText()を比較してみると以下のような感じに。
Debug.Log($"TextMeshProの内容(タグ付き) : {_tmp.text.Replace("<", "<\u200B").Replace(">", "\u200B>")}"); Debug.Log($"TextMeshProの内容(タグ無し) : {_tmp.GetParsedText().Replace("<", "<\u200B").Replace(">", "\u200B>")}");
![]() |
なお、ログ(コンソール)には基本タグは表示されないので、
Replaceでタグを無効化しています。
(GetParsedText()はそもそもタグ付いてないので置換もされていないが比較のため一応やっている感じ)
![]() |


