UnityにはリッチテキストというHtmlタグに似たものがあるので該当タグをリッチテキストに置換するのがシンプルかと思います。
簡単な実装サンプル

リッチテキストを有効にするにはTextコンポーネントのRich Textを有効にする必要があります。

HtmlタグをRich Textタグに変換するスクリプト
変換文字列に正規表現を使えばもっとシンプルになると思いますが、すみませんがあまり詳しくありません。
C#
1using System.Text;
2
3public static class HtmlTagToRichTextCombater
4{
5 /// <summary>
6 /// 削除する文字
7 /// </summary>
8 static readonly string[] DeleteWords =
9 {
10 "\"", "'"
11 };
12
13 /// <summary>
14 /// 変換する文字
15 /// </summary>
16 static readonly string[][] ReplaceWords =
17 {
18 new string[]{"<font ", "<"},
19 new string[]{"< font ", "<"},
20 new string[]{"</font", "</color"},
21 new string[]{"</ font", "</color"}
22 };
23
24 /// <summary>
25 /// HTMLタグをリッチテキストに変更する
26 /// </summary>
27 /// <returns>The tag to rich text.</returns>
28 /// <param name="stg">Stg.</param>
29 public static string HtmlTagToRichText(this string stg)
30 {
31 StringBuilder sb = new StringBuilder(stg);
32
33 foreach (var word in DeleteWords)
34 {
35 sb.Replace(word, string.Empty);
36 }
37
38 foreach (var words in ReplaceWords)
39 {
40 sb.Replace(words[0], words[1]);
41 }
42
43 return sb.ToString();
44 }
45}
46
利用側
C#
1using UnityEngine;
2using UnityEngine.UI;
3
4public class HtmlTagToRichTextTest : MonoBehaviour
5{
6 [SerializeField] Text TextRender;
7
8 const string Txt = "こんにちわ!私は<font color=\"red\">太郎</font>です。\nこんにちわ!私は<font color=\"red\"> 花子</font>です。\nさようなら<font color=\"red\"> 太郎</font>さん。\nさようなら。";
9
10 void Start ()
11 {
12 //HTMLタグをリッチテキストに変換してTextに表示
13 TextRender.text = Txt.HtmlTagToRichText();
14 }
15}
最後に
CSVデータはUnityで扱えないので
[追記]
CsVはUnity上で扱えます。エクセル形式(xml)と勘違いしておりました。
xmlはビルドしてもビルド内に含まれませんがCSVは含まれて割と簡単に中身を取り出せますが、ScriptableObjectの方が負荷も少なく軽いのでオススメです。下記はエクセル形式(xml)からScriptableObjectへの変換方法です。エクセルをお持ちであれば簡単にCsVをエクセル形式(xml)に変換できます。
[追記終了]
ScriptableObjectに変換すると良いと思います。
変換のタイミングでHTMLタグも合わせて変換すればパフォーマンスも良くなると思います。
もしUnity-Excel-Importer-Makerを使うとすればEditorフォルダ内に変換用スクリプトが出力されるので、簡単に好きな処理を挟むことができオススメです。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/03/23 01:39
2019/03/23 17:14
2019/03/24 00:30