/// <summary> /// 文字列の前後にカラーのリッチテキストタグを追加 /// </summary> /// <param name="str">文字列</param> /// <param name="colorKey">タグに設定するカラー</param> /// <returns></returns> public static string AddColorTag(string str, Color color) { return(AddColorTag(str, "#" + ColorUtil.ToColorString(color))); }
//末尾の空白文字をチェック private void CheckWhiteSpaceEndOfCell(Dictionary <string, StringGridDictionary> bookDictionary) { AdvEditorSettingWindow editorSetting = AdvEditorSettingWindow.GetInstance(); if (UnityEngine.Object.ReferenceEquals(editorSetting, null)) { return; } if (!editorSetting.CheckWhiteSpaceOnImport) { return; } List <string> ignoreHeader = new List <string>(); ignoreHeader.Add("Text"); if (LanguageManagerBase.Instance != null) { foreach (string language in LanguageManagerBase.Instance.Languages) { ignoreHeader.Add(language); } } foreach (StringGridDictionary book in bookDictionary.Values) { foreach (var sheet in book.Values) { List <int> ignoreIndex = new List <int>(); foreach (var item in ignoreHeader) { int index; if (sheet.Grid.TryGetColumnIndex(item, out index)) { ignoreIndex.Add(index); } } foreach (var row in sheet.Grid.Rows) { if (row.RowIndex == 0) { continue; } for (int i = 0; i < row.Strings.Length; ++i) { string str = row.Strings[i]; if (str.Length <= 0) { continue; } if (ignoreIndex.Contains(i)) { continue; } int endIndex = str.Length - 1; if (char.IsWhiteSpace(str[endIndex])) { Debug.LogWarning(row.ToErrorString("Last characer is white space [" + ColorUtil.AddColorTag(str, ColorUtil.Red) + "] \n")); } } } } } }