unity修改默认字体
注意问题,切换场景时需要重新配置一下*如若出现报错,再次配置一下即可
using UnityEngine;
using UnityEditor;
using System;
using UnityEngine.UI;
using UnityEngine.Windows;public class SetDefaultFont : EditorWindow
{private static Font m_font;private static EditorWindow window;public static Font Font{get{return m_font;}}[MenuItem("CustomTool/设置默认字体")]public static void OpenWindow(){window = GetWindow(typeof(SetDefaultFont));window.minSize = new Vector2(500, 300);m_font = ToolCacheManager.GetFont();}private void OnGUI(){EditorGUILayout.Space();EditorGUILayout.LabelField("选择默认字体");EditorGUILayout.Space();m_font = (Font)EditorGUILayout.ObjectField(m_font, typeof(Font), true);EditorGUILayout.Space();if (GUILayout.Button("确定")){ToolCacheManager.SaveFont(m_font);window.Close();}}
}
public class ToolCacheManager
{private static readonly string cachePath =Application.dataPath.Substring(0, Application.dataPath.Length - 6) + "Library/BlueToolkitCache/";private static void Init(){if (!Directory.Exists(cachePath)){Directory.CreateDirectory(cachePath);}}public static void SaveFont(Font font){FontData data = ScriptableObject.CreateInstance<FontData>();data.defaultFont = font;AssetDatabase.CreateAsset(data, "Assets/front/FontData.asset");}public static Font GetFont(){FontData data = AssetDatabase.LoadAssetAtPath<FontData>("Assets/front/FontData.asset");return data.defaultFont;}
}
[System.Serializable]
public class FontData : ScriptableObject
{[SerializeField]public Font defaultFont;
}public class UnityUIEvent
{[InitializeOnLoadMethod]private static void Init(){Action OnEvent = delegate{ChangeDefaultFont();};EditorApplication.hierarchyChanged += delegate (){OnEvent();};}private static void ChangeDefaultFont(){if (Selection.activeGameObject != null){Text text = Selection.activeGameObject.GetComponent<Text>();if (text != null){text.font = ToolCacheManager.GetFont();}//********** Text[] text_arr = Selection.activeGameObject.transform.GetComponentsInChildren<Text>();if (text_arr != null){for (int i = 0; i < text_arr.Length; i++){text_arr[i].font= ToolCacheManager.GetFont();}}}}
}
unity修改默认字体相关推荐
- python系统字体_Python matplotlib修改默认字体的操作
matplotlib库作为Python常用的数据可视化库,默认字体居然不支持中文字体,必须得吐槽一下~ 闲言少叙,开始正文 方法1:在plot中指定prop参数 使用matplotlib.font_m ...
- origin设置不同区域的颜色_[测试狗]Origin入门教程(二十四):效率翻倍小技巧——修改默认字体...
在使用Origin的时候,对于每次绘图都需要更改字体觉得很麻烦,因为Origin默认的字体为Arial,但是我们常用的字体一般为Times New Roman,在下拉框的很底部,每次更改都很浪费时间. ...
- visio修改默认字体
visio没有同word一样通过样式或者通过设计→默认字体的方式来修改默认字体,通常只能选择所有内容然后设置字体,但新建的图形中字体又会变回默认,我找到了一种修改visio默认字体的方法,以下操作基于 ...
- Axure 9 修改默认字体
Axure 9 修改默认字体 一.修改默认字体 1.点击:项目–>元件样式管理器. 2.可以点击任意控件去修改该控件的默认字体以及相关的参数. 3.如何修改全部默认字体? 点击Default,然 ...
- xshell修改默认字体字号、配色方案(背景)
演示版本:Xshell6_plus下载 xshell修改默认字体字号.配色方案(背景) 1.打开:文件→属性 (或者按快捷键Alt+P) 2.设置字体.字号 我选择的是Consolas字体,10号大小 ...
- Word修改默认字体和段落的方法
在进行毕业设计论文撰写时老师会要求所有的汉字的字体为宋体,英文和数字的字体为Times New Roman,段落两端对齐,首行缩进2字符,段前段后0磅,行间距21磅,如果等全部撰写完之后再慢慢改字体会 ...
- Word修改默认字体
在Win10的最近一次更新后,发现我的office365默认字体都给我改成等线,什么鬼,以前都是宋体,现在这个还真的不习惯,就动手修改默认字体,设置如下: 1.在word空白处点击鼠标右键,选择字体. ...
- zabbix修改默认字体
zabbix修改默认字体 在zabbixweb界面里有时候显示界面为框框 所以修改默认字体 现在windows里 随便找个字体: win+R 搜fonts 然后随便复制了一个字体,传到zabbix服务 ...
- Unity TextMeshPro解决中文乱码以及修改默认字体
(自学unity问题产生及解决记录贴) 环境及版本:windows,unity 2021.3.20f1c1 一.创建TextMeshPro输入中文产生乱码 问题:TextMeshPro中文显示乱码 解 ...
最新文章
- slc、mlc、tlc闪存芯片颗粒区别介绍
- xcode 学习笔记2:动态添加view
- Java新手看招 常用开发工具介绍
- git上传文件到github
- Azure App Service 如何在第一时间用上最新版 .NET Core
- 文件服务器缓存加速,存储缓存为文件传输提速
- 【译】Tim Rose 的kibana插件教程-自定义App插件
- java rsa加密 加签_RSA加密解密与加签验签
- Linux下安装LAMP的步骤
- centos7安装mysql5.7.16_centos7.x编译安装mysql5.7.16
- mysql查询本年的函数_sql 查询本年、本月、本日记录的语句,附SQL日期函数
- 说下我自己对空号检测的理解跟心得
- WEBRTC TURNSERVER配置
- 如何批量将 Word 文档转为 PDF 格式
- 求 HCDA认证题库
- 几何语言点C是ab的中点,数学几何定理符号语言[教学备用]
- Allegro 铜皮分割 详解
- Verilog 实现千兆网UDP协议 基于88E1111--数据接收
- 广州小程序开发公司哪家好?广州小程序开发公司排行前十?
- JUC(二):Java 线程预备知识