【ハルシオンブログ】Text作った時のデフォルトフォントを変えたいとき
こんにちは。
大坂です。
明日は文化の日らしいですよ。
何やら今日予定を入れてくる人がいると思ったら明日休みらしいです。
さて、今日のネタですが、Textのオブジェクトを作った時に毎回フォントの設定変えるのが面倒になってくるのでそんなときの対策。
普通に作るテキストのデフォルトはどうやって変えられるのかわからなかったので、カスタムしたやつをメニューに追加する方針。
コードはこんな感じ。「Assets/Editor」の下に入れる。
Assets/Fontフォルダを作成して設定したいフォントを入れる。

これでHierarchyでの右クリックメニューのUIの中に「CustomText」が追加されます。

これで作ってあげるとちゃんとAssets/Fontの中に入れた「Font」が設定されてますね。

と、こんな感じで対応できるみたいなので、何かのお役に立てばいいですね!
ではまたノシ
大坂です。
明日は文化の日らしいですよ。
何やら今日予定を入れてくる人がいると思ったら明日休みらしいです。
さて、今日のネタですが、Textのオブジェクトを作った時に毎回フォントの設定変えるのが面倒になってくるのでそんなときの対策。
普通に作るテキストのデフォルトはどうやって変えられるのかわからなかったので、カスタムしたやつをメニューに追加する方針。
コードはこんな感じ。「Assets/Editor」の下に入れる。
using UnityEngine;
using UnityEngine.UI;
using UnityEditor;
public class CustomText : MonoBehaviour {
// 右クリックメニューのUIの中に追加
[UnityEditor.MenuItem("GameObject/UI/CustomText")]
public static void CreateCustomizedText() {
// オブジェクトの作成
GameObject textObj = new GameObject("Text", typeof(Text));
textObj.transform.localPosition = Vector3.zero;
textObj.transform.localScale = Vector3.one;
Text text = textObj.GetComponent<Text>();
// Asset/Fontの下にあるフォントを検索(違うフォルダに入れている場合は変更)
string[] fonts = AssetDatabase.FindAssets("t:Font", new string[] { "Assets/Font" });
if(fonts != null && fonts.Length > 0) {
// フォントの設定
Font font = AssetDatabase.LoadAssetAtPath<Font>(AssetDatabase.GUIDToAssetPath(fonts[0]));
text.font = font;
} else {
// なければArialを設定しておく
text.font = Resources.GetBuiltinResource(typeof(Font), "Arial.ttf") as Font;
}
// テキストの初期値
text.text = "New Text";
// テキストの色
text.color = Color.black;
// 右クリックしたオブジェクトを親にする
if(Selection.activeGameObject) {
GameObject parentObj = Selection.activeGameObject;
textObj.transform.SetParent(parentObj.transform, false);
textObj.layer = parentObj.layer;
textObj.isStatic = parentObj.isStatic;
}
}
}
Assets/Fontフォルダを作成して設定したいフォントを入れる。

これでHierarchyでの右クリックメニューのUIの中に「CustomText」が追加されます。

これで作ってあげるとちゃんとAssets/Fontの中に入れた「Font」が設定されてますね。

と、こんな感じで対応できるみたいなので、何かのお役に立てばいいですね!
ではまたノシ
Category: 開発日記(Unity)
« 【ハルシオンブログ】Unityで宴を使ったとき、uGUIのオブジェクトが表にあってタップで文字送りができないよーうorz の解決法? | 【ハルシオンブログ】Unity2017(.1~.2系)InputFieldで日本語が使えないんだけど?って時の対応方法。Unityさん早く直して! »
コメント
| h o m e |